Module Expr Str Import alias Import alias Import alias Import alias ClassDef bases AttributeLoad AttributeLoad NameLoad attr attr body FunctionDef arguments args NameParam defaults body Assign NameStore Call AttributeLoad Call NameLoad NameLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Dict Str Str Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body Expr Str Assign NameStore Call AttributeLoad Call NameLoad NameLoad NameLoad attr Expr Call AttributeLoad NameLoad attr Dict Str Str Str Str Str Num Return NameLoad decorator_list FunctionDef arguments args NameParam defaults body Assign NameStore SubscriptLoad AttributeLoad NameLoad attr Index Str If UnaryOpNot Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr body Return NameLoad For NameStore Call AttributeLoad NameLoad attr NameLoad body Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad NameLoad Assign NameStore Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad AttributeLoad NameLoad attr attr NameLoad If NameLoad body If UnaryOpNot NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad Continue orelse Continue Assign NameStore NameLoad Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad TryExcept body Assign NameStore Call AttributeLoad NameLoad attr ListLoad NameLoad keyword AttributeLoad NameLoad attr keyword AttributeLoad NameLoad attr Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr handlers ExceptHandler type AttributeLoad NameLoad attr name NameStore body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str TupleLoad NameLoad NameLoad Continue If AttributeLoad NameLoad attr body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str TupleLoad NameLoad AttributeLoad NameLoad attr If UnaryOpNot NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str NameLoad Continue If NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str TupleLoad NameLoad NameLoad For NameStore Call NameLoad NameLoad Call AttributeLoad NameLoad attr Str body TryExcept body Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr Expr Call NameLoad NameLoad handlers ExceptHandler type NameLoad body Expr Call AttributeLoad AttributeLoad NameLoad attr attr BinOpMod Str TupleLoad NameLoad NameLoad Continue Assign TupleStore NameStore NameStore Call AttributeLoad NameLoad attr Assign NameStore Num If CompareIn Str NameLoad body Assign NameStore SubscriptLoad AttributeLoad NameLoad attr Index Str Expr Call AttributeLoad NameLoad attr NameLoad NameLoad keyword NameLoad decorator_list decorator_list
N/A N/A 
Runs third party scripts and collects their output.

Scripts need to be +x and should output metrics in the form of

```
metric.path.a 1
metric.path.b 2
metric.path.c 3
```

They are not passed any arguments and if they return an error code,
no metrics are collected.

#### Dependencies

 * [subprocess](http://docs.python.org/library/subprocess.html)

 N/A diamond.collector N/A diamond.convertor N/A os N/A subprocess UserScriptsCollector N/A N/A N/A diamond collector Collector N/A get_default_config_help N/A N/A self N/A N/A N/A config_help N/A N/A N/A super UserScriptsCollector self get_default_config_help N/A N/A N/A config_help update N/A scripts_path Path to find the scripts to run N/A config_help N/A get_default_config N/A N/A self N/A N/A N/A 
        Returns the default collector settings
         N/A config N/A N/A N/A super UserScriptsCollector self get_default_config N/A N/A N/A config update N/A path scripts_path floatprecision . /etc/diamond/user_scripts/ 4 N/A config N/A collect N/A N/A self N/A N/A N/A scripts_path N/A N/A self config N/A scripts_path N/A N/A N/A N/A os access scripts_path N/A os R_OK N/A N/A None N/A script N/A N/A os listdir scripts_path N/A N/A absolutescriptpath N/A N/A N/A os path join scripts_path script N/A executable N/A N/A os access absolutescriptpath N/A os X_OK N/A is_file N/A N/A N/A os path isfile absolutescriptpath N/A is_file N/A N/A N/A executable N/A N/A N/A N/A N/A self log info N/A %s is not executable absolutescriptpath N/A N/A N/A N/A out None N/A N/A N/A N/A self log debug N/A Executing %s absolutescriptpath N/A N/A N/A proc N/A N/A subprocess Popen N/A absolutescriptpath stdout N/A subprocess PIPE stderr N/A subprocess PIPE N/A N/A out err N/A N/A proc communicate N/A N/A N/A N/A subprocess CalledProcessError N/A e N/A N/A N/A N/A N/A self log error N/A %s error launching: %s; skipping N/A absolutescriptpath e N/A N/A N/A proc returncode N/A N/A N/A N/A N/A self log error N/A %s return exit value %s; skipping N/A absolutescriptpath N/A proc returncode N/A N/A out N/A N/A N/A N/A N/A self log info N/A %s return no output absolutescriptpath N/A N/A err N/A N/A N/A N/A N/A self log error N/A %s return error output: %s N/A absolutescriptpath err N/A line N/A filter None N/A N/A out split N/A N/A N/A N/A N/A name value N/A N/A line split N/A N/A float value N/A N/A N/A ValueError N/A N/A N/A N/A N/A self log error N/A %s returned error output: %s N/A absolutescriptpath line N/A N/A N/A name value N/A N/A line split N/A floatprecision 0 N/A N/A . value N/A N/A floatprecision N/A N/A self config N/A floatprecision N/A N/A N/A self publish name value precision floatprecision N/A N/A