diff --git a/config/settings/default.q b/config/settings/default.q index eaba00167..b4a3d4974 100644 --- a/config/settings/default.q +++ b/config/settings/default.q @@ -6,7 +6,7 @@ loadcommoncode:1b // whether to load the common code defined at ${KDBCODE}/comm loadprocesscode:0b // whether to load the process specific code defined at ${KDBCODE}/{process type} loadnamecode:0b // whether to load the name specific code defined at ${KDBCODE}/{name of process} loadhandlers:1b // whether to load the message handler code defined at ${KDBCODE}/handlers -logroll:1b // whether to roll the std out/err logs on a daily basis +logroll:1b // whether to roll the std out/err logs on a daily basis lowpowermode:0b // Use TorQ in low cpu usage mode (No default logging for timer calls, Disabled heartbeating, Reduced timer frequency, set resubscription off) // logging config @@ -15,22 +15,22 @@ outmap:`ERR`INF`WARN!2 1 1 // where each log level is output (0=none; 1=std out; // Configuration used by the usage functions - logging of client interaction \d .usage -enabled:1b // whether the usage logging is enabled +enabled:1b // whether the usage logging is enabled logtodisk:1b // whether to log to disk or not logtomemory:1b // write query logs to memory -ignore:1b // check the ignore list for functions to ignore -ignorelist:(`upd;"upd") // the list of functions to ignore in async calls +ignore:1b // check the ignore list for functions to ignore +ignorelist:(`upd;"upd") // the list of functions to ignore in async calls flushinterval:0D00:30:00 // default value for how often to flush the in-memory logs flushtime:1D00 // default value for how long to persist the in-memory logs. Set to 0D for no flushing suppressalias:0b // whether to suppress the log file alias creation -logtimestamp:{[].proc.cd[]} // function to generate the log file timestamp suffix -LEVEL:3 // log level. 0=none;1=errors;2=errors+complete queries;3=errors+before a query+after -logroll:1b // Whether or not to roll the log file automatically (on a daily schedule) +logtimestamp:{[].proc.cd[]} // function to generate the log file timestamp suffix +LEVEL:3 // log level. 0=none;1=errors;2=errors+complete queries;3=errors+before a query+after +logroll:1b // Whether or not to roll the log file automatically (on a daily schedule) // Client tracking configuration \d .clients -enabled:1b // whether client tracking is enabled -opencloseonly:0b // whether we only log opening and closing of connections +enabled:1b // whether client tracking is enabled +opencloseonly:0b // whether we only log opening and closing of connections INTRUSIVE:0b // interrogate clients for more information upon connection. Do not use if there are any non-kdb+ clients AUTOCLEAN:1b // clean out old records when handling a close RETAIN:`long$0D02 // length of time to retain client information @@ -47,7 +47,7 @@ enabled:0b // Access controls \d .access -enabled:0b // whether the access controls are enabled +enabled:0b // whether the access controls are enabled openonly:0b // only check permissions when the connection is made, not on every call MAXSIZE:2000000000 // the maximimum size in bytes for any result set @@ -57,24 +57,25 @@ enabled:0b // prevent write access to clients if enabled // Server connection details \d .servers -enabled:1b // whether server tracking is enabled -CONNECTIONS:`rdb`hdb // list of connections to make at start up -DISCOVERYREGISTER:1b // whether to register with the discovery service -CONNECTIONSFROMDISCOVERY:1b // whether to get connection details from the discovery service (as opposed to the static file). -TRACKNONTORQPROCESS:1b // whether to track and register non torQ processes -NONTORQPROCESSFILE:hsym first .proc.getconfigfile["nontorqprocess.csv"] // non torQ processes file -SUBSCRIBETODISCOVERY:1b // whether to subscribe to the discovery service for new processes becoming available -DISCOVERYRETRY:0D00:05 // how often to retry the connection to the discovery service. If 0, no connection is made. This also dictates if the discovery service can connect it and cause it to re-register itself (val > 0) -HOPENTIMEOUT:2000 // new connection time out value in milliseconds -RETRY:0D00:05 // period on which to retry dead connections. If 0, no reconnection attempts -RETAIN:`long$0D00:30 // length of time to retain server records -AUTOCLEAN:0b // clean out old records when handling a close -DEBUG:1b // log messages when opening new connections -LOADPASSWORD:1b // load the external username:password from ${KDBCONFIG}/passwords -STARTUP:0b // whether to automatically make connections on startup -DISCOVERY:enlist` // list of discovery services to connect to (if not using process.csv) -SOCKETTYPE:enlist[`]!enlist ` // dict of proctype -> sockettype e.g. `hdb`rdb`tp!`tcps`tcp`unix -PASSWORDS:enlist[`]!enlist ` // dict of host:port!user:pass +enabled:1b // whether server tracking is enabled +CONNECTIONS:() // list of connections to make at start up +DISCOVERYCONNECT:$[`lim in key`.Q;$[0W=.Q.lim[][`conns];1b;0b];1b] // check for limit on process connections (relevant for KDB-X community edition) +DISCOVERYREGISTER:DISCOVERYCONNECT // whether to register with the discovery service +CONNECTIONSFROMDISCOVERY:DISCOVERYREGISTER // whether to get connection details from the discovery service (as opposed to the static file). +TRACKNONTORQPROCESS:1b // whether to track and register non torQ processes +NONTORQPROCESSFILE:hsym first .proc.getconfigfile["nontorqprocess.csv"] // non torQ processes file +SUBSCRIBETODISCOVERY:1b // whether to subscribe to the discovery service for new processes becoming available +DISCOVERYRETRY:0D00:05 // how often to retry the connection to the discovery service. If 0, no connection is made. This also dictates if the discovery service can connect it and cause it to re-register itself (val > 0) +HOPENTIMEOUT:2000 // new connection time out value in milliseconds +RETRY:0D00:05 // period on which to retry dead connections. If 0, no reconnection attempts +RETAIN:`long$0D00:30 // length of time to retain server records +AUTOCLEAN:0b // clean out old records when handling a close +DEBUG:1b // log messages when opening new connections +LOADPASSWORD:1b // load the external username:password from ${KDBCONFIG}/passwords +STARTUP:0b // whether to automatically make connections on startup +DISCOVERY:enlist` // list of discovery services to connect to (if not using process.csv) +SOCKETTYPE:enlist[`]!enlist ` // dict of proctype -> sockettype e.g. `hdb`rdb`tp!`tcps`tcp`unix +PASSWORDS:enlist[`]!enlist ` // dict of host:port!user:pass // functions to ignore when called async - bypass all permission checking and logging \d .zpsignore @@ -83,13 +84,13 @@ ignorelist:(`upd;"upd";`.u.upd;".u.upd") // list of functions to ignore // timer functions \d .timer -enabled:1b // whether the timer is enabled +enabled:1b // whether the timer is enabled debug:0b // print when the timer runs any function logcall:1b // log each timer call by passing it through the 0 handle -nextscheduledefault:2h // the default way to schedule the next timer +nextscheduledefault:2h // the default way to schedule the next timer // Assume there is a function f which should run at time T0, actually runs at time T1, and finishes at time T2 - // if mode 0, nextrun is scheduled for T0+period - // if mode 1, nextrun is scheduled for T1+period + // if mode 0, nextrun is scheduled for T0+period + // if mode 1, nextrun is scheduled for T1+period // if mode 2, nextrun is scheduled for T2+period // caching functions @@ -103,7 +104,7 @@ default:`$"Europe/London" // default local timezone // configuration for default mail server \d .email -enabled:0b // whether emails are enabled +enabled:0b // whether emails are enabled url:` // url of email server e.g. `$"smtp://smtpout.secureserver.net:80" user:` // user account to use to send emails e.g. torq@aquaq.co.uk password:` // password for user account @@ -115,26 +116,26 @@ img:`$getenv[`KDBHTML],"/img/DataIntellect-TorQ-logo.png" // default image for b // configuration for kafka \d .kafka -enabled:0b // whether kafka is enabled +enabled:0b // whether kafka is enabled kupd:{[k;x] -1 `char$x;} // default definition of kupd // heartbeating \d .hb -enabled:1b // whether the heartbeating is enabled -subenabled:0b // whether subscriptions to other hearbeats are made -CONNECTIONS:`ALL // processes that heartbeat subscriptions are recieved from (as a subset of .servers.CONNECTIONS) -debug:1b // whether to print debug information +enabled:1b // whether the heartbeating is enabled +subenabled:0b // whether subscriptions to other hearbeats are made +CONNECTIONS:`ALL // processes that heartbeat subscriptions are recieved from (as a subset of .servers.CONNECTIONS) +debug:1b // whether to print debug information publishinterval:0D00:00:30 // how often heartbeats are published checkinterval:0D00:00:10 // how often heartbeats are checked -warningtolerance:2f // a process will move to warning state when it hasn't heartbeated in warningtolerance*checkinterval -errortolerance:3f // and to an error state when it hasn't heartbeated in errortolerance*checkinterval +warningtolerance:2f // a process will move to warning state when it hasn't heartbeated in warningtolerance*checkinterval +errortolerance:3f // and to an error state when it hasn't heartbeated in errortolerance*checkinterval \d .ldap enabled:0b // whether ldap authentication is enabled -debug:0i // debug level for ldap library: 0i = none, 1i=normal, 2i=verbose +debug:0i // debug level for ldap library: 0i = none, 1i=normal, 2i=verbose servers: enlist `$"ldap://localhost:0"; // ldap server address(es) version:3; // ldap version number blocktime:0D00:30:00; // time before blocked user can attempt authentication @@ -150,12 +151,12 @@ broadcast:1b; // broadcast publishing is on by default. Availb // timezone \d .eodtime rolltimeoffset:0D00:00:00.000000000; // offset from default midnight roll -datatimezone:`$"GMT"; // timezone for TP to timestamp data in -rolltimezone:`$"GMT"; // timezone to perform rollover in +datatimezone:`$"GMT"; // timezone for TP to timestamp data in +rolltimezone:`$"GMT"; // timezone to perform rollover in //Subscriber cut-off \d .subcut -enabled:0b; //flag for enabling subscriber cutoff. true means slow subscribers will be cut off. Default is 0b +enabled:0b; //flag for enabling subscriber cutoff. true means slow subscribers will be cut off. Default is 0b maxsize:100000000; //a global value for the max byte size of a subscriber. Default is 100000000 breachlimit:3; //the number of times a handle can exceed the size limit check in a row before it is closed. Default is 3 checkfreq:0D00:01; //the frequency for running the queue size check on subscribers. Default is 0D00:01 diff --git a/config/settings/segmentedchainedtickerplant.q b/config/settings/segmentedchainedtickerplant.q index 051fe8b75..72c64b441 100644 --- a/config/settings/segmentedchainedtickerplant.q +++ b/config/settings/segmentedchainedtickerplant.q @@ -37,4 +37,4 @@ enabled:1b // switch on subscribercutoff \d .servers CONNECTIONS,:`segmentedtickerplant -CONNECTIONSFROMDISCOVERY:1b +CONNECTIONSFROMDISCOVERY:$[`lim in key`.Q;$[0W=.Q.lim[][`conns];1b;0b];1b] // check for limit on process connections (relevant for KDB-X community edition) diff --git a/datadog/Example_TorQ_Monitoring_Dashboard.json b/datadog/Example_TorQ_Monitoring_Dashboard.json index fb5c98979..358702b1b 100644 --- a/datadog/Example_TorQ_Monitoring_Dashboard.json +++ b/datadog/Example_TorQ_Monitoring_Dashboard.json @@ -1 +1 @@ -{"title":"TorQ Monitoring","description":"## Process checks, CPU Usage, memory stats and log file checks for TorQ\n\n","widgets":[{"id":0,"definition":{"type":"timeseries","requests":[{"q":"avg:system.processes.cpu.pct{discovery1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{tickerplant1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{sort1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{hdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{rdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{wdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{hdb2}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{chainedtp1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{feed1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{housekeeping1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{iexfeed1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{metrics1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{monitor1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{gateway1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{reporter1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{sortworker1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{sortworker2}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}}],"markers":[{"value":"y = 2","display_type":"ok dashed"}],"title":"The CPU utilization of each process (%)","title_size":"16","title_align":"left","show_legend":true,"legend_size":"0"},"layout":{"x":0,"y":37,"width":64,"height":34}},{"id":1,"definition":{"type":"timeseries","requests":[{"q":"avg:system.processes.mem.pct{discovery1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{tickerplant1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{sort1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{hdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{wdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{chainedtp1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{feed1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{hdb2}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{iexfeed1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{housekeeping1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{metrics1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{monitor1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{reporter1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{sortworker1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{sortworker2}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}}],"title":"The process memory consumption of each process (%)","title_size":"16","title_align":"left","show_legend":true,"legend_size":"0"},"layout":{"x":0,"y":0,"width":64,"height":36}},{"id":2,"definition":{"type":"change","requests":[{"q":"avg:system.processes.mem.pct{*} by {process_name}","change_type":"relative","compare_to":"hour_before","increase_good":false,"order_by":"name","order_dir":"desc","show_present":true}],"title":"Relative Change of Process Memory Usage (%)","title_size":"16","title_align":"left"},"layout":{"x":83,"y":24,"width":57,"height":23}},{"id":3,"definition":{"type":"change","requests":[{"q":"avg:system.processes.cpu.pct{*} by {process_name}","change_type":"relative","compare_to":"hour_before","increase_good":false,"order_by":"name","order_dir":"desc","show_present":true}],"title":"Relative Change of Process CPU Usage (%)","title_size":"16","title_align":"left"},"layout":{"x":83,"y":48,"width":57,"height":23}},{"id":4,"definition":{"type":"event_stream","query":"*","event_size":"s","title":"Events Stream","title_size":"16","title_align":"left"},"layout":{"x":83,"y":0,"width":57,"height":23}},{"id":5,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.gateway1{*}","aggregator":"last","conditional_formats":[{"comparator":"<","value":1,"palette":"white_on_red"},{"comparator":">=","value":1,"palette":"white_on_green"}]}],"title":"Gateway1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":0,"width":17,"height":10}},{"id":6,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.sort1{*}","aggregator":"last","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"Sort1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":11,"width":17,"height":10}},{"id":7,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.rdb1{*}","aggregator":"last","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"RDB1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":22,"width":17,"height":10}},{"id":8,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.feed1{*}","aggregator":"avg","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"Feed1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":33,"width":17,"height":10}},{"id":9,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.hdb1{*}","aggregator":"last","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"HDB1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":44,"width":17,"height":10}},{"id":10,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.hdb2{*}","aggregator":"avg","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"HDB2 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":55,"width":17,"height":9}}],"template_variables":[],"layout_type":"free","is_read_only":false,"notify_list":[],"id":"44u-dkb-23y"} +{"title":"TorQ Monitoring","description":"## Process checks, CPU Usage, memory stats and log file checks for TorQ\n\n","widgets":[{"id":0,"definition":{"type":"timeseries","requests":[{"q":"avg:system.processes.cpu.pct{discovery1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{tickerplant1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{sort1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{hdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{rdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{wdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{hdb2}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{chainedtp1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{feed1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{housekeeping1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{metrics1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{monitor1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{gateway1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{reporter1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{sortworker1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.cpu.pct{sortworker2}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}}],"markers":[{"value":"y = 2","display_type":"ok dashed"}],"title":"The CPU utilization of each process (%)","title_size":"16","title_align":"left","show_legend":true,"legend_size":"0"},"layout":{"x":0,"y":37,"width":64,"height":34}},{"id":1,"definition":{"type":"timeseries","requests":[{"q":"avg:system.processes.mem.pct{discovery1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{tickerplant1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{sort1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{hdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{wdb1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{chainedtp1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{feed1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{hdb2}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{housekeeping1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{metrics1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{monitor1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{reporter1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{sortworker1}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}},{"q":"avg:system.processes.mem.pct{sortworker2}","display_type":"line","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"}}],"title":"The process memory consumption of each process (%)","title_size":"16","title_align":"left","show_legend":true,"legend_size":"0"},"layout":{"x":0,"y":0,"width":64,"height":36}},{"id":2,"definition":{"type":"change","requests":[{"q":"avg:system.processes.mem.pct{*} by {process_name}","change_type":"relative","compare_to":"hour_before","increase_good":false,"order_by":"name","order_dir":"desc","show_present":true}],"title":"Relative Change of Process Memory Usage (%)","title_size":"16","title_align":"left"},"layout":{"x":83,"y":24,"width":57,"height":23}},{"id":3,"definition":{"type":"change","requests":[{"q":"avg:system.processes.cpu.pct{*} by {process_name}","change_type":"relative","compare_to":"hour_before","increase_good":false,"order_by":"name","order_dir":"desc","show_present":true}],"title":"Relative Change of Process CPU Usage (%)","title_size":"16","title_align":"left"},"layout":{"x":83,"y":48,"width":57,"height":23}},{"id":4,"definition":{"type":"event_stream","query":"*","event_size":"s","title":"Events Stream","title_size":"16","title_align":"left"},"layout":{"x":83,"y":0,"width":57,"height":23}},{"id":5,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.gateway1{*}","aggregator":"last","conditional_formats":[{"comparator":"<","value":1,"palette":"white_on_red"},{"comparator":">=","value":1,"palette":"white_on_green"}]}],"title":"Gateway1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":0,"width":17,"height":10}},{"id":6,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.sort1{*}","aggregator":"last","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"Sort1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":11,"width":17,"height":10}},{"id":7,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.rdb1{*}","aggregator":"last","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"RDB1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":22,"width":17,"height":10}},{"id":8,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.feed1{*}","aggregator":"avg","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"Feed1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":33,"width":17,"height":10}},{"id":9,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.hdb1{*}","aggregator":"last","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"HDB1 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":44,"width":17,"height":10}},{"id":10,"definition":{"type":"query_value","requests":[{"q":"avg:torqup.hdb2{*}","aggregator":"avg","conditional_formats":[{"comparator":">=","value":1,"palette":"white_on_green"},{"comparator":"<","value":1,"palette":"white_on_red"}]}],"title":"HDB2 Process Up","title_size":"16","title_align":"left","time":{"live_span":"1m"},"precision":0},"layout":{"x":65,"y":55,"width":17,"height":9}}],"template_variables":[],"layout_type":"free","is_read_only":false,"notify_list":[],"id":"44u-dkb-23y"}