googleforgames / quilkin

Quilkin is a non-transparent UDP proxy specifically designed for use with large scale multiplayer dedicated game server deployments, to ensure security, access control, telemetry data, metrics and more.
Apache License 2.0
1.29k stars 93 forks source link

Add heap profiling #984

Closed Jake-Shadle closed 1 month ago

Jake-Shadle commented 3 months ago

Related to #983, we should add heap profiling/tracking to quilkin as an additional source of runtime information to the existing pprof data. This could be optional as well either at build or runtime.

I think it would be useful to also use something like https://github.com/nnethercote/dhat-rs in at least one test when reproing #983 so that we have continuous testing of the memory usage so that whatever the fix/es is/are for #983 don't regress.

XAMPPRocky commented 3 months ago

Similar to pprof, it would be good if we can integrate this in a pyroscope compatible format so that we can see it in production.

There is https://docs.rs/pyroscope/ but I'm not sure if that includes memory profiling or not.