Graphite does two things:
- Store numeric time-series data
- Render graphs of this data on demand
What Graphite does not do is collect data for you, however there are some tools out there that know
// Use Gists to store code you would like to remember later on | |
console.log(window); // log the "window" object to the console |
Graphite does two things:
What Graphite does not do is collect data for you, however there are some tools out there that know
rsync (Everyone seems to like -z, but it is much slower for me)
git config --global alias.cowsay '!git commit -m "`fortune | cowsay -f tux`"' |
reactor: | |
- 'salt/minion/*/start': | |
- /srv/reactor/sync_all.sls | |
- /srv/reactor/graphite_event.sls |
# This uses the grains module | |
# http://docs.saltstack.org/en/latest/ref/modules/all/salt.modules.grains.html#module-salt.modules.grains | |
# http://salt.readthedocs.org/en/latest/ref/states/all/salt.states.module.html#module-salt.states.module | |
salt: | |
module.run: | |
- name: grains.ls | |
#!py | |
import pprint | |
import yaml | |
space_character = " " | |
def run(): | |
''' | |
Print the config files | |
''' | |
t = { |
class Command(object): | |
''' | |
Enables to run subprocess commands in a different thread | |
with TIMEOUT option! | |
Based on jcollado's solution: | |
http://stackoverflow.com/questions/1191374/subprocess-with-timeout/4825933#4825933 | |
''' | |
def __init__(self, cmd): | |
self.cmd = cmd |
// derived from http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#Parallel_algorithm | |
function map() { | |
emit(1, // Or put a GROUP BY key here | |
{sum: this.value, // the field you want stats for | |
min: this.value, | |
max: this.value, | |
count:1, | |
diff: 0, // M2,n: sum((val-mean)^2) | |
}); |