Replies: 4 comments
-
Prometheus is what I'm familiar with and what many tools support nowadays, instead of, e.g., I'm actually considering turning |
Beta Was this translation helpful? Give feedback.
-
As for CPU usage: I don't know to which extent GHC keeps per-thread metrics. It would be cool if we have some and can expose those (though it's, as you know, not the same as reduction count). To be investigated. Also, per-process metrics might get expensive, as in, having millions of processes would imply millions of metrics, which would imply millions of (Prometheus) time-series, many of them potentially "short" (when lifetime of a process is short, e.g., a process to handle a single user request), which can get expensive. |
Beta Was this translation helpful? Give feedback.
-
Yes, that's a good point about the potential scalability issues with per-process metrics. It's important to consider the trade-offs between the granularity of metrics and the cost of collecting and storing them. In cases where having per-process metrics is too expensive, we may need to settle for aggregating metrics at a coarser level, such as per-service or per-host, while still ensuring that we have enough visibility to identify performance bottlenecks and other issues. It's also worth considering approaches like sampling or probabilistic counting to reduce the number of metrics collected, while still maintaining a representative view of system behavior. |
Beta Was this translation helpful? Give feedback.
-
Raised by @TristanCacqueray in https://discourse.haskell.org/t/towards-an-actor-framework-for-haskell/5929/10, based on the content of https://github.com/NicolasT/troupe/wiki/Design-Ideas/.
Beta Was this translation helpful? Give feedback.
All reactions