Skip to content

Instantly share code, notes, and snippets.

@khobbits
Last active March 23, 2016 13:33
Show Gist options
  • Save khobbits/251a55802b7be14f9fcd to your computer and use it in GitHub Desktop.
Save khobbits/251a55802b7be14f9fcd to your computer and use it in GitHub Desktop.
function RunJail($code, $obj) {
$ret = '';
eval($code);
echo $ret; // KHobbits debug line
return $ret;
}//end RunJail()
$ret .= "{$obj['title']}\\r\\n
Severity: {$obj['severity']}\\r\\n
"; if( $obj['state'] == 0 ) { $ret .= "Time elapsed: {$obj['elapsed']}\\r\\n"; } $ret .= "
Timestamp: {$obj['timestamp']}\\r\\n
"; if( $obj['transport'] != \"hipchat\" ) { $ret .= "
Unique-ID: {$obj['uid']}\\r\\n
"; } $ret .= "
Rule: "; if( $obj['name'] ) { $ret .= "{$obj['name']}"; } else { $ret .= "{$obj['rule']}"; } $ret .= "\\r\\n
"; if( $obj['faults'] ) { $ret .= "Faults:\\r\\n
"; foreach( $obj['faults'] as $key=>$value) { $ret .= " #$key: {$value['string']}\\r\\n"; } $ret .= ""; } $ret .= "
"; } $ret .= "";
Code
$ret .= "{$obj['title']}\\r\\n
Severity: {$obj['severity']}\\r\\n
"; if( $obj['state'] == 0 ) { $ret .= "Time elapsed: {$obj['elapsed']}\\r\\n"; } $ret .= "
Timestamp: {$obj['timestamp']}\\r\\n
"; if( $obj['transport'] != \"hipchat\" ) { $ret .= "
Unique-ID: {$obj['uid']}\\r\\n
"; } $ret .= "
Rule: "; if( $obj['name'] ) { $ret .= "{$obj['name']}"; } else { $ret .= "{$obj['rule']}"; } $ret .= "\\r\\n
"; if( $obj['faults'] ) { $ret .= "Faults:\\r\\n
"; foreach( $obj['faults'] as $key=>$value) { $ret .= " #$key: {$value['string']}\\r\\n"; } $ret .= ""; } $ret .= "
"; } $ret .= "";
/code
obj
Array
(
[hostname] => san8
[device_id] => 129
[template] => %title\r\n
Severity: %severity\r\n
{if %state == 0}Time elapsed: %elapsed\r\n{/if}
Timestamp: %timestamp\r\n
{if %transport != "hipchat"}
Unique-ID: %uid\r\n
{/if}
Rule: {if %name}%name{else}%rule{/if}\r\n
{if %faults}Faults:\r\n
{foreach %faults} #%key: %value.string\r\n{/foreach}{/if}
{/foreach}
[title] => Device Issue
[faults] => Array
(
[1] => Array
(
[device_id] => 129
[hostname] => san8
[sysName] => sbf-140110023
[ip] => 10.16.34.2
[community] => public
[authlevel] =>
[authname] =>
[authpass] =>
[authalgo] =>
[cryptopass] =>
[cryptoalgo] =>
[snmpver] => v2c
[port] => 161
[transport] => udp
[timeout] =>
[retries] =>
[bgpLocalAs] =>
[sysObjectID] => enterprises.33381.14.1.1.140110023
[sysDescr] => SpycerBox - RHEL5.3
[sysContact] => root <root@localhost>
[version] =>
[hardware] =>
[features] =>
[location] => WMS-CAR
[os] => generic
[status] => 1
[status_reason] =>
[ignore] => 0
[disabled] => 0
[uptime] => 15719667
[agent_uptime] => 0
[last_polled] => 2016-03-23 12:41:49
[last_poll_attempted] =>
[last_polled_timetaken] => 6.47
[last_discovered_timetaken] => 16.96
[last_discovered] => 2016-03-23 06:36:06
[last_ping] => 2016-03-23 12:41:49
[last_ping_timetaken] => 0.79
[purpose] =>
[type] => storage
[serial] =>
[icon] => generic
[poller_group] => 0
[override_sysLocation] => 0
[notes] =>
[port_association_mode] => 1
[string] => sysObjectID => enterprises.33381.14.1.1.140110023; sysDescr => SpycerBox - RHEL5.3;
)
)
[elapsed] => 50m 16s
[uid] => 8356
[severity] => critical
[rule] => %devices.uptime > "300"
[name] => TestRule
[timestamp] => 2016-03-23 12:41:49
[contacts] => Array
(
[mpd.systems@themill.com] => NOC
)
[state] => 1
[transport] => hipchat
[msg] =>
)
/obj
MSG:
/MSG
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment