Charles Hall
0c2094a56f
record FoundIn with metrics instead of traces
...
This is much more efficient in terms of network use and data storage,
and also easier to visualize.
2024-06-06 20:56:36 -07:00
Charles Hall
9364d44ce2
use strum instead
2024-06-05 17:41:39 -07:00
Charles Hall
792300d220
derive Copy on FoundIn
2024-06-05 17:41:39 -07:00
Charles Hall
784b86a1f6
make stringified names mirror variant names
2024-06-05 17:41:39 -07:00
Charles Hall
38382128ac
rename FoundIn::{value -> as_str}
2024-06-05 17:41:39 -07:00
Charles Hall
22dd7f1a54
move FoundIn to observability.rs
2024-06-05 17:41:36 -07:00
Charles Hall
04ecf4972e
record histogram of http requests
2024-06-03 18:18:44 -07:00
Charles Hall
a0b92c82e8
set up opentelemetry for metrics
...
Also adds an `allow_prometheus` option (disabled by default) to expose
a `/metrics` endpoint that returns Prometheus data.
2024-06-03 18:18:44 -07:00
Charles Hall
94fda7c875
improve usage of Resource
...
* Extract into reusable function (we'll need this later)
* Merge the values we want to override over the defaults, instead of
dropping the defaults completely
* Don't unnecessarily allocate (the `vec![]` usage is gone)
2024-06-03 18:18:44 -07:00
Charles Hall
507de063f5
don't hardcode EnvFilter for tracing-flame
2024-05-27 10:06:26 -07:00
Lambda
7a154f7416
observability: allow combining multiple tracing layers
...
Previously, jaeger, tracing_flame and stderr output were mutually
exclusive. There's no good reason for this.
2024-05-27 10:03:44 -07:00
Lambda
263edcc8a1
observability: don't drop tracing_flame drop guard until exit
2024-05-27 10:02:42 -07:00
Charles Hall
c17ab5328d
factor observability things into its own module
...
And also create a new error for the observability initialization.
2024-05-27 10:01:00 -07:00