Click the Start a free trial link to start a 15-day SaaS trial of our product and join our community as a trial user. If you are an existing customer do not start a free trial.
AppDynamics customers and established members should click the sign in button to authenticate.
I have used the process monitoring extension and I can see and expand the metrics via the metrics browser on my server it runs on in the controller. (For example in this case, this process has "running instances" 1 and I can verify this)
I would like to pull this through to a health rule where if running instances < 1 then it will
The metrics are outlined in /opt/appdynamics/machine-agent/monitors/ProcessMonitor/config.yml
When I use them to create a health rule and use Specify a Relative Metric Path: and use the path copied into the buffer from the metric browser. The "Current health rule evaluation" is greyed out and does not seem to work.
However if I configure the metric in the health rule through to a dashboard it evaluates at true, however if I change the Health rule to trigger an critical condition, it doesnt trigger (as I suspected)
This is also true if I use a metric straight to the dashboard that is not available via the metric tree selection.
Has anybody else ever successfully configured a relative metric to be used in a Health rule or directly as a specify a relative metric path to monitor a process instance count?
Are you trying to report off of 1 particular process or any process running under that custom metrics tier? If you're trying to get any process, you may need to use a wildcard, to make the path something like:
Application Infrastructure Performance | Tier1 | Custom Metrics | Process Monitor | Linux Processes | * | Running Instances. It also might help to check the "Set to false if no data" checkbox when designing your rule too.
Thanks for the reply. This metric originates from a single machine agent and its one particular process I am trying to get out of the metrics browser in the server view into a dashboard panel for "instances running". This shows a value of 1 (as it should) when its viewed via the Metrics Browser.
Here is the path but with the servername hidden..
#metricPrefix: "Server|Component:Keepalived|Custom Metrics|Process Monitor|" metricPrefix: "Hardware Resources|HA Components|Keepalived" # metricPrefix: "Custom Metrics|Process Monitor|" # displayName: required - Metrics to be reported under this name in Controller's Metric Browser # regex/pid/pidFile - process is fetched using this field instances: # - displayName: "machine agent" # regex: ".* machineagent.jar" # - displayName: "ssh" # pid: "1056" - displayName: "keepalived" pidFile: "/var/run/keepalived.pid" # Not necessary to modify linux: process: "ps -eo pid,%cpu=CPU%,%mem=Memory%,etime,rsz=RSS,args" solaris: process: "ps -eo pid,pcpu=CPU%, -o pmem=Memory%, -o rss=RSS -o args" aix: process: "ps -eo pid,pcpu=CPU%,pmem=Memory%,rss=RSS,args" metrics: - CPU%: multiplier: 1 - Memory%: alias: "Memory%" - RSS: alias: "Resident Set Size" - Running Instances: alias: "Running Instances" - etime: alias: "etime" # number of concurrent tasks numberOfThreads: 2 # This is to run this in scheduled mode. In this case, the extension will fetch the data every 300 seconds # and caches the data. The cached data will be reported to controller every min. This way there is no metric drop. # Can be used when the data rarely changes or to reduce the load while fetching metrics every minute. #taskSchedule: # numberOfThreads: 1 # taskDelaySeconds: 300