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
| exercism-workon() { | |
| cd "$HOME/exercism.io/haskell/$1" | |
| MODULE=$(runhaskell "$1_test.hs" 2>&1 | awk '/Could not find module/ {print $5}' | sed "s/[\`']//g") | |
| if [ ! -z $MODULE ]; then | |
| touch $MODULE; | |
| else | |
| MODULE=$(ls *.hs | grep -v _test.hs); | |
| fi | |
| ===================================================================================================================================================================================================== | |
| [ PROBLEM ]..[ ALGO ]..[ TEST ]..[Budgt]..[ METRICS ]..[ RELIABLE ]..[ RESULT, confidence interval ]..[C.I]..[ σ ]..[ OUTLIERS ]..[ RES w/o outliers ]..[ σ w/o outliers ]..[ (C INT)/METRICS ].. | |
| ackley :: hgs_ibea :: quick :: 50 :: dst from pareto :: OK :: 3.531 ≤ 4.091 ≤ 4.710 :: 95% :: 0.812 :: 9.09% mild -- extr. :: 3.908 ( -4.451%) :: 0.600 ( -26.056%) :: 28.835% :: | |
| ackley :: :: :: :: distribution :: OK :: 31.714 ≤ 32.978 ≤ 34.100 :: 95% :: 1.620 :: -- mild -- extr. :: 32.978 ( +0.000%) :: 1.620 ( 0.000%) :: 7.235% :: | |
| ackley :: :: :: :: extent :: OK :: 3.591 ≤ 3.756 ≤ |
| {-# LANGUAGE OverloadedStrings, DeriveGeneric #-} | |
| import Web.Scotty | |
| import Data.Aeson | |
| import GHC.Generics | |
| data Stuff = Stuff { dt :: Things | |
| } deriving (Show, Generic) | |
| instance FromJSON Stuff | |
| instance ToJSON Stuff | |
| data Things = Things { id :: Int |
Graphite does two things:
What Graphite does not do is collect data for you, however there are some tools out there that know
| def printl(s): | |
| import inspect | |
| frame = inspect.currentframe() | |
| try: | |
| print s.format(**frame.f_back.f_locals) | |
| finally: | |
| del frame | |
| def foo(): | |
| a = 123 |
| #include <stdio.h> | |
| #include <unistd.h> | |
| int main(int c, char **v, char **e) { | |
| int rc; const char *m; | |
| if ( (m="chdir" ,rc= chdir(v[1]) ) == 0 | |
| && (m="chroot",rc=chroot(v[1]) ) == 0 | |
| && (m="setuid",rc=setuid(getuid())) == 0 ) | |
| m="execve", execve(v[2],v+3,e); | |
| perror(m); |
| #include <stdio.h> | |
| #include <unistd.h> | |
| const char newroot[] = "/home/buildbot_flowbox/jail-" JAIL_NAME; | |
| const char cmd[] = "/bin/bash"; | |
| char *args[2] = {"--init-file", "/home/buildbot_flowbox/initfile-jail-" JAIL_NAME}; | |
| int main(int c, char **v, char **e) { | |
| int rc; const char *m; | |
| if ( (m = "chdir" ,rc = chdir(newroot) ) == 0 |
| Compiling flowbox-account-manager | |
| Resolving dependencies... | |
| cabal: Could not resolve dependencies: | |
| trying: flowbox-account-manager-0.1 (user goal) | |
| trying: transformers-0.3.0.0/installed-7df... (dependency of | |
| flowbox-account-manager-0.1) | |
| next goal: flowbox-aws (dependency of flowbox-account-manager-0.1) | |
| rejecting: flowbox-aws-0.1 (conflict: transformers==0.3.0.0/installed-7df..., | |
| flowbox-aws => transformers>0.4) | |
| Backjump limit reached (change with --max-backjumps). |
| def get_fresh_flowbox(): | |
| with _section("Getting repositories"): | |
| for repo in ["flowbox", "flowbox-env"]: | |
| if not exists(repo): | |
| local(_f("git clone [email protected]:wdanilo/{repo}.git")) | |
| elif not isdir(repo): | |
| abort(_f("path {repo} exists but does not look like a repository")) | |
| with _section("Preparing flowbox - disabling CUDA", local_directory="flowbox"): | |
| result = _local_withstdin("patch -u -p1 -N", patch_nocuda, noerror=True) |
| Resolving dependencies... | |
| Configuring random-1.0.1.1... | |
| Building random-1.0.1.1... | |
| Preprocessing library random-1.0.1.1... | |
| [1 of 1] Compiling System.Random ( System/Random.hs, dist/dist-sandbox-f730ba9d/build/System/Random.o ) | |
| [1 of 1] Compiling System.Random ( System/Random.hs, dist/dist-sandbox-f730ba9d/build/System/Random.p_o ) | |
| In-place registering random-1.0.1.1... | |
| Running Haddock for random-1.0.1.1... | |
| Preprocessing library random-1.0.1.1... | |
| Haddock coverage: |