github.com/pyroscope-io/pyroscope@v0.37.3-0.20230725203016-5f6947968bd0/examples/golang-pull/static/README.md (about) 1 # Pyroscope pull with static targets 2 3 This example demonstrates how Pyroscope can be used to scrape pprof profiles from remote static targets. 4 5 ### 1. Run Pyroscope server and demo application in docker containers 6 7 ```shell 8 docker-compose up -d 9 ``` 10 11 As a sample application we use slightly modified Jaeger [Hot R.O.D.](https://github.com/jaegertracing/jaeger/tree/master/examples/hotrod) demo – 12 the only difference is that we enabled built-in Go `pprof` HTTP endpoints. You can find the modified code in the [hotrod-goland](https://github.com/pyroscope-io/hotrod-golang) repository. 13 14 Note that we apply configuration defined in `server.yml`: 15 16 <details> 17 <summary>server.yml</summary> 18 19 ```yaml 20 --- 21 log-level: debug 22 scrape-configs: 23 - job-name: testing 24 enabled-profiles: [cpu, mem] 25 static-configs: 26 - application: hotrod 27 targets: 28 - hotrod:6060 29 labels: 30 env: dev 31 ``` 32 33 </details> 34 35 ### 2. Observe profiling data 36 37 Profiling is more fun when the application does some work. Let's order some rides [in our Hot R.O.D. app](http://localhost:8080). 38 39 Now that everything is set up, you can browse profiling data via [Pyroscope UI](http://localhost:4040).