Hi Everyone,


This is a quick announcement of StackImpact, which is a production profiler 
and monitor partially based on pprof API. It automates profiling and 
tracing, and displays regular and anomaly-triggered profiles in a 
historically comparable form. A tracing introduced in 1.5 is used for HTTP 
handler and HTTP call bottleneck detection. StackImpact also includes 
health monitoring, anomaly alerting, and more. 


Here the package link: https://github.com/stackimpact/stackimpact-go


The main motivation behind creating StackImpact can be summarized in these 
few points:


   - To have the historical view of application hot spots and bottlenecks, 
   which is necessary for performance issue troubleshooting and optimization, 
   a regular pprof execution, interactive result analysis and comparison is 
   needed.
   - Locating and accessing the application node’s host to run the go tool 
   pprof against may be tricky in container environments such as Kubernetes.
   - Pprof’s HTTP handler, which accepts profiling requests, needs to 
   attach itself to application’s HTTP server (or have one running), which 
   means extra security measures should be taken to protect the listening port.
   - If application has crashed or is unable to respond to pprof requests, 
   no profiling is possible. However, historical profiles could be extremely 
   useful in post-mortem root cause analysis.

Here is how it works. After adding the following two lines to the 
application, the agent will start reporting profiles, traces as well as 
runtime metrics and other performance related information to the Dashboard, 
where it will be available for analysis. See screenshots here 
https://stackimpact.com/features/.


agent := stackimpact.NewAgent();
agent.Configure("agent key here", “SomeGoApp”)


This starts the agent, which runs with the app from start till the end. 
Performance information will be reported to and available in the Dashboard 
at https://stackimpact.com (or on-premise respectively)



Your feedback is welcome!


Thanks,

Dmitri

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to