-
Notifications
You must be signed in to change notification settings - Fork 4
nAttrMon Objects
Nuno Aguiar edited this page Oct 26, 2020
·
23 revisions
The following is a list of the current objects base for Inputs, Outputs and Validations:
Type | Name | Category | Description |
---|---|---|---|
Input | nInput_AFPing | RAID | Executes the RAID Ping AF operation to determine if an instance is responsive. |
Input | nInput_BPMDebugChecks | RAID | Checks the database & memory debug levels and any existing trace execution on BPM flows. |
Input | nInput_CBPMDebugChecks | RAID | Checks the database & memory debug levels on CBPM flows. |
Input | nInput_CBPMSemaphores | RAID | Checks the values of RAID's instance semaphores. |
Input | nInput_DB | DB | Executes a SQL query and returns the result as input. |
Input | nInput_EndPoints | OS | Test for reachability/expected availability of HTTP(s) URLs or TCP ports. |
Input | nInput_FMSRuleStatus | RAID | Gets each RAID FMS engine rule status (active, inactive, inactive by anti-flooding) |
Input | nInput_Filesystem | OS | Per unix mount point gets the total, used, free and % used space and inode totals (locally or remotely). |
Input | nInput_FilesystemCount | OS | Per filepath and filename regular expression filter, returns the total count and size, the min, max and avg size of existing files, the date of the newest file and oldest file (locally or remotely). |
Input | nInput_HTTPJson | OS | Retrieves a json parsed content from a HTTP/HTTPs external URL and makes it the content of the corresponding attribute. It allows to apply a selector or even a function to filter the results to be stored on the attribute. |
Input | nInput_IMAbnormalLoadings | RAID | Checks for IM loadings that didn't process the expected number of records. |
Input | nInput_IMLoadingsProgress | RAID | Monitor the specified IM block types loading progress by number of runs, min, max, avg records processed, etc. |
Input | nInput_IMMemory | RAID | Returns the current RAID instance reported IM memory. |
Input | nInput_LogErrorAgg | OS | Given a regular expression pattern returns the number of occurrences of that pattern in specific files (useful to aggregate the count of Java exceptions on a log file, for example). |
Input | nInput_OSInfo | OS | Returns the operating system load, load average, free, swap and commit memory. |
Input | nInput_RAIDMemory | RAID | Returns the current RAID instance reported memory. |
Input | nInput_RunningFlows | RAID | Returns the current BPM running flows. |
Input | nInput_Semaphores | RAID | Returns the current BPM semaphores values. |
Input | nInput_Sessions | RAID | Returns the current sessions list for a RAID instance. |
Input | nInput_Shell | OS | Executes (locally or remotely) and returns the output of a shell command (parsing or not the output as JSON). |
Input | nInput_Channel | Input Channel | Receives attributes from another nAttrMon or OpenAF script. |
Input | nInput_RemoteChannel | Input Channel | Retrieves attributes from another nAttrMon or OpenAF script through an OpenAF channel. |
Input | nInput_Schedulers | RAID | Checks when each scheduler entry executed and when the next is scheduled to execute. |
Input | nInput_CompareTimes | OS | Compares the time difference between a RAID application server and corresponding connected databases. |
Input | nInput_DMPerformance | RAID | Measure performance of Data Model queries vs direct database SQL queries. |
Input | nInput_EndPoints | OS | Check if a port or http endpoint si reachable within certain criteria (e.g. timeout, response, ...) |
Output | nOutput_DSV | Output DSV | Outputs a specific set of attributes or warnings to DSV/CSV files per date with automatic housekeeping. |
Output | nOutput_EmailWarnings | Output Warning | If there is any new level HIGH warning (or any other combination) it will send an email with it. |
Output | nOutput_H2 | Output History | Records the attribute values and warnings on a H2 database. |
Output | nOutput_HTTP | Output HTTP | Provides a minimal HTTP interface to check attribute values, warnings and output history (if activated). |
Output | nOutput_HTTP_JSON | Output HTTP | Provides a JSON full dump of the current attribute, attribute values and warnings. |
Output | nOutput_Log | Output Log | Outputs the current attribute values into a text log file. |
Output | nOutput_Oracle | Output History | Records the attribute values and warnings on a Oracle database. |
Output | nOutput_Stdout | Output Log | Outputs the current attribute values into the stdout. |
Output | nOutput_Channels | Output Channels | Exposes several OpenAF channels with attributes, values, warnings and plugs plus access to operational functionality. |
Output | nOutput_RemoteChannel | Output Channel | Pushes attribute values to a remote nAttrMon or OpenAF script through an OpenAF channel. |
Output | nOutput_Notifications | Output Warnings | Sends push notifications triggered by warnings. |
Output | nOutput_ES | Output ES | Outputs attribute values and warnings to an ElasticSearch cluster. |
Output | nOutput_Slack | Output Slack | Outputs warnings to Slack. |
Validation | nValidation_Generic | Validation Generic | Simple generic validation for an attribute or any set of attribute patterns. |
To build an input object follow the following javascript template:
/**
* <odoc>
* <key>nattrmon.nInput_MyInput(aMap)</key>
* aMap is composed of:\
* - keys (the key of the objects to refer to)
* - chKey (the channel name for the keys of objects to refer to)
* - attrTemplate (a string template for the name of the attribute using {{name}})
* </odoc>
*/
var nInput_MyInput = function(aMap) {
this.params = aMap;
if (isUnDef(this.params.myMandatoryArg)) this.params.myMandatoryArg = "something";
nInput.call(this, this.input);
}
inherit(nInput_MyInput, nInput);
nInput_MyInput.prototype.input = function(scope, args) {
var ret = {};
var attrname = templify(this.params.attrTemplate, { name: this.params.name });
ret[attrname] = runSomething();
return ret;
}
To build a validation object follow the following javascript template:
/**
* <odoc>
* <key>nattrmon.nValidation_MyValidation(aMap)</key>
* aMap is composed of:\
* - warnTemplate (a string template for the warning title using {{title}})
* - warnDescTemplate (a string template for the warning description {{title}})
* </odoc>
*/
var nValidation_MyValidation = function(aMap) {
this.params = aMap;
if (isUnDef(this.params.myMandatoryArg)) this.params.myMandatoryArg = "something";
nValidation.call(this, this.validation);
}
inherit(nValidation_MyValidation, nValidation);
nValidation_MyValidation.prototype.validate = function(scope, args) {
var ret = [];
var title = templify(this.params.warnTemplate);
var description = templify(this.params.warnDescTemplate);
if (somethingIsWrong)
ret.push(new nWarning(nWarning.LEVEL_HIGH, title, descripiton));
else
this.closeWarning(title);
ret.push(new nWarning(nWarning.LEVEL_INFO, "A information", "Just for fyi..."));
return ret;
}
To build an output object follow the following javascript template:
/**
* <odoc>
* <key>nattrmon.nOutput_MyOutput(aMap)</key>
* aMap is composed of:\
* - inclusionList (a list of attributes to include)
* - chInclusionList (a channel name with attributes to include)
* </odoc>
*/
var nOutput_MyOutput = function(aMap) {
this.params = aMap;
if (isUnDef(this.params.myMandatoryArg)) this.params.myMandatoryArg = "something";
nOutput.call(this, this.output);
}
inherit(nOutput_MyOutput, nOutput);
nOutput_MyOutput.prototype.output = function(scope, args) {
for(key in scope.getCurrentValues()) {
...
}
}