Looking for options for monitoring edgemicro. What are others doing?
Something similar to the machine readable format of Apache mod_status would be great. E.g.
[vagrant@apigee-edgemicro ~]$ curl http://localhost:19080/server-status?auto Total Accesses: 189027 Total kBytes: 3660967 CPULoad: 18.8974 Uptime: 458 ReqPerSec: 412.723 BytesPerSec: 8185220 BytesPerReq: 19832.2 BusyWorkers: 1 IdleWorkers: 149 Scoreboard: _______________________________________________________________________________W______________________________________________________________________..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Great question and I would love to see other customers chime in on the response.
Edge micro doesn't have a builtin plugin module like Apache does to monitor specific status from the process itself. If you are looking into gaining insight into your microservice usage, you can use the analytics as a part of Apigee Edge to monitor your API performance. Statistics like total traffic, error rate, latencies, etc are all available for this tool to monitor.
As far as CPU and memory heap, there are many options as far as third party tools out there for monitoring and pros and cons for individual tools. Here at Apigee, in our cloud, we build our own monitoring tools to alert us on CPU, memory, etc and use tools like Grafana for this.
You may also be interested in Apigee Test tool which is in beta:
http://docs.apigee.com/analytics-services/apigeetest/apigee-test-overview
Monitoring cpu and memory is outside the scope of the Edgemicro product. For most customers, we have seen varying tools that they use for monitoring and it really depends a lot of what else is in their infrastructure and what tools their team are familiar with.
Here are some monitoring tools if you are interested in looking them up:
grafana - we use this in house and customize and build it with influxdb
Nagios
Graphite
If you like paid tools in the cloud, there are tools like App Dynamics or New Relic.
We can't make any recommendations on what is better, as requirements are based on your use case.
@jhunt@apigee.com, I don't think Apigee Test can help. Microgateway are usually behind customer firewalls (and their data centers). I don't think Apigee Test will test those endpoints.
We're creating a microgateway plugin that exposes some of the core Nodejs process metrics out to configured statsd server.
Would be incredibly useful to also get some metrics about the North and South bound HTTP pools to determine if they are "full" or not and could do with further tuning.
@David Teirney, There is no monitoring plugins for MG, but we have included a sample called healthcheck (please see (https://github.com/apigee/microgateway-plugins).
What you've done (custom plugin) is the way to go.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |