Observability Awesome
What dose Observability mean?
- logs - 日志
- metrics - 指标
- session replays - 会话重放
- traces - 跟踪
- errors - 错误
- 目前业内共识 OTEL
- 大多场景直接选择 OpenTelemetry 即可
If you can't measure it, you can't manage it. If you can't measure it, you can't improve it.
-- by Peter Drucker
When a measure becomes a target, it ceases to be a good measure.
-- by The Risk of Goodhart's Law
- o11y - Observability
- getsentry/sentry笔记Sentrygetsentry/sentry · BSL, Python · error tracking and performance monitoring platform打开:/notes/service/observability/tracing/sentry
- Uptime
- louislam/uptime-kumaGitHublouislam/uptime-kumalouislam/uptime-kuma · MIT, JS, Vue · 监控网站 uptime · https://demo.uptime.kuma.pet/笔记:uptime-kuma
- MIT, JS, Vue
- 监控网站 uptime
- demo.uptime.kuma.pet
- uptime-kuma笔记uptime-kumalouislam/uptime-kuma · MIT, JS, Vue · 监控网站 uptime · https://demo.uptime.kuma.pet/打开:/notes/service/observability/uptime-kuma
- upptime/upptimeGitHubupptime/upptime
- louislam/uptime-kumaGitHublouislam/uptime-kumalouislam/uptime-kuma · MIT, JS, Vue · 监控网站 uptime · https://demo.uptime.kuma.pet/笔记:uptime-kuma
- Alerting
- ccfos/nightingaleGitHubccfos/nightingale
- Apache-2.0, Go
- opsre/WatchAlertGitHubopsre/WatchAlert
- MIT, Go
- Alerting for Prometheus
- prometheus/alertmanagerGitHubprometheus/alertmanagerprometheus/alertmanager · https://prometheus.io/docs/alerting/latest/alertmanager/ · /api/v2 · https://petstore.swagger.io/?url=https://raw.githubusercontent.com/prometheus/aler...笔记:alertmanager
- ccfos/nightingaleGitHubccfos/nightingale
- Storage
- trickstercache/tricksterGitHubtrickstercache/trickster
- Apache-2.0, Go
- HTTP Reverse Proxy Cache and Time Series Dashboard Accelerator
- trickstercache/tricksterGitHubtrickstercache/trickster
- openobserve笔记OpenObservezinclabs/openobserve · Apache-2.0, Rust · 原 ZincObserve · 从 ZincSearch 演化而来 · Log & Trace & Metrics · 存储 Parquet + Datafusion打开:/notes/service/observability/openobserve
- zincobserve -> openobserve
- Apache-2.0, Rust
- 从 ZincSearch 演化而来
- Log & Trace & Metrics
- 通用时间序列数据库/time-series笔记Database Awesome| name | stand for | · | Relational DBMS | 关系型数据库 | · | Key-value stores | KV 存储 | · | Document stores | 文档存储 | · | Time Series DBMS | 时序数据库 |章节:时序数据库打开:/notes/db/awesome
- opentelemetry.io/ecosystem/vendors
- observIQ/bindplane-opGitHubobservIQ/bindplane-op
- hyperdxio/hyperdxGitHubhyperdxio/hyperdx
- MIT, TS
- Clickhouse 存储
- session replays, logs, metrics, traces, errors
- clickvisual/clickvisualGitHubclickvisual/clickvisual
- UI for Clickhouse
- highlight/highlightGitHubhighlight/highlightApache-2.0+EE, TS, Go · error monitoring, session replay, logging, trace · https://github.com/highlight/highlight/blob/main/docker/compose.yml笔记:highlight
- keephq/keepGitHubkeephq/keepkeephq/keep · MIT+EE, Python, Typescript · FastAPI, SQLite, PostgreSQL, Redis, Elasticsearch, Pusher, Socket.IO · React, NextJS, React Chrono, Chart.js, Recharts, TailwindCSS笔记:Keep
- MIT+EE, Python, Typescript
- AIOps and alert management platform
- prymitive/karmaGitHubprymitive/karma
- Apache-2.0, Go, Typescript
- Alert dashboard for Prometheus Alertmanager
- google/mtailGitHubgoogle/mtail
- Apache-2.0, Go
- 从应用程序日志中提取监控指标
- Logging / Trend / LLM Observability
- openobserve/openobserveGitHubopenobserve/openobserve
- 开源可观测性平台,覆盖 logs、metrics、traces、frontend monitoring、pipelines 和 LLM observability。
- sansan0/TrendRadarGitHubsansan0/TrendRadar
- AI 驱动的舆情与趋势监控工具,聚合多平台热点、RSS 和推送渠道。
- openobserve/openobserveGitHubopenobserve/openobserve
Tracing
- teletrace/teletraceGitHubteletrace/teletrace
- Apache-2.0, Go
- hypertrace/hypertraceGitHubhypertrace/hypertrace
Metrics
- Prometheus
- InfluxDB
- victoria-metrics笔记VictoriaMetricsVictoriaMetrics/VictoriaMetrics 是什么? · Apache-2.0, Golang · 时序数据库 · 高性能、低成本、大规模 · 支持集群 · 默认推荐单节点 - 小于 百万/s 的指标速率推荐单节点版本 - 通过垂直扩容/增加 CPU 内存来提升性能打开:/notes/service/observability/metrics/victoria-metrics
- 最好,最推荐
- m3db/m3笔记M3m3db/m3 · Apache 2.0, Go · Distributed TSDB · 集群依赖 ETCD · Why · Why Choose M3DB for Logz.io Prometheus-as-a-Service · vs. Thanos & Cortex打开:/notes/service/observability/metrics/m3
- Apache-2.0, Go
- Distributed TSDB, Aggregator and Query Engine, Prometheus Sidecar, Graphite Compatible, Metrics Platform
- 基于/fork Prometheus 的服务
- promxy笔记promxyjacksontj/promxy · 聚合多个 prometheus 进行查询 · config.yaml · nocache=1 for VictoriaMetrics QueryParams · VictoriaMetrics优化: · 添加 查询参数避免缓存问题打开:/notes/service/observability/metrics/promxy
- cortex笔记Cortexcortexproject/cortex · horizontally scalable, highly available, multi-tenant, long term storage for Prometheus. · 架构 · 提供远程写入接口打开:/notes/service/observability/metrics/cortex
- thanos笔记Thanosthanos-io/thanos · Prometheus 长期存储 · 后端使用对象存储服务 · 多租户方案 · sidecar 配置 external label,使用多层 query · receive 接收多租户,但不推荐 · 适用于网络隔离场景,querier 无法直接访问 sidecar 时打开:/notes/service/observability/metrics/thanos
- jacksontj/promxy笔记promxyjacksontj/promxy · 聚合多个 prometheus 进行查询 · config.yaml · nocache=1 for VictoriaMetrics QueryParams · VictoriaMetrics优化: · 添加 查询参数避免缓存问题打开:/notes/service/observability/metrics/promxy
- 聚合多个 prometheus 进行查询
- config.yamlGitHub Filejacksontj/promxy/cmd/promxy/config.yaml
- nocache=1 for VictoriaMetrics QueryParamsGitHub Filejacksontj/promxy/pkg/servergroup/config.go#L96-L99
- prom-migratorGitHub Filetimescale/promscale/cmd/prom-migrator
- grafana/mimirGitHubgrafana/mimir
- AGPLv3, Go
- 长期存储,使用 S3 存储
- 商业
- Datadog - APM 和监控平台
- New Relic - 应用性能监控
- AWS CloudWatch - 云指标
- spinnaker/kayentaGitHubspinnaker/kayenta
- Automated Canary Service
- part of Spinnaker
- argoproj/argo-rolloutsGitHubargoproj/argo-rolloutsargoproj/argo-rollouts · Apache-2.0, Go · Rollout 可替代 Deployment · Blue-Green / 蓝绿发布 · Canary / 金丝雀发布 · 精细化流量权重分配 · 自动回滚与自动推广笔记:Argo Rollouts
- 利用 Kubernetes 生态,声明式地管理发布过程
- 渐进式交付(Progressive Delivery)
APM
- APM -> Application Performance Management
- APM = Metrcis + Trace = Prometheus + Jaeger
- APM 内置集成 - 而不是简单的组合两个场景 - 例如: Grafana 同时显示 Prometheus + Jaeger
- 多用于 Java 环境 - 更容易 instrument
- 非 Java 环境使用 OpenTelemetry
- 围绕 业务/应用/Application
- uptrace/uptraceGitHubuptrace/uptrace
- BSL, Golang
- 存储使用 ClickHouse
- SigNoz/signozGitHubSigNoz/signozSigNoz/signoz · MIT+EE, Golang, React · APM, ClickHouse · 应用信息存储在 SQLite #941 · dashboards layout, alert config · signoz/alertmanager笔记:Signoz
- MIT, Golang
- OpenTelemetry Collector, ClickHouse
- signoz.io/docs/architecture
- opensearch-project/observabilityGitHubopensearch-project/observabilitylogs - 日志 · metrics - 指标 · session replays - 会话重放 · traces - 跟踪 · errors - 错误 · 目前业内共识 OTEL · 大多场景直接选择 OpenTelemetry 即可 · If you can't measure it, you can't manage it.笔记:Observability Awesome
- Graphite
- Javamelody
- Stagemonitor
- Scouter
- Elastic APM
- App Metrics
- Glowroot
- erda-project/erdaGitHuberda-project/erda
- Apache-2.0, Go
国人开发维护
- sunface/datavGitHubsunface/datav
- Apache-2.0, TS+Go
- dianping/catGitHubdianping/cat
- Apache-2.0, Java
- by 美团点评
- pinpoint-apm/pinpointGitHubpinpoint-apm/pinpoint
- Apache-2.0, Java
- HBase
- apache/skywalkingGitHubapache/skywalkingapache/skywalking · Apache-2.0, Java · Application Performance Monitoring System · OAP - Observability Analysis Platform笔记:SkyWalking
- Apache-2.0, Java
- ES, H2, MySQL, PostgreSQL
- deepflowio/deepflowGitHubdeepflowio/deepflow
- Apache-2.0, Go, Rust
Profiling
- 更加细致的指标监控 - 方法,进程级别
- 更加细粒度 - 毫秒级
- 主要用于程序优化
- grafana/pyroscopeGitHubgrafana/pyroscope
- AGPLv3, Go
- parca-dev/parcaGitHubparca-dev/parca
- Apache-2.0, Go
- Continuous profiling for analysis of CPU and memory usage
- andrewrk/poopGitHubandrewrk/poop
- MIT, Zig
- Performance Optimizer Observation Platform
- linux perf_event_open
- plasma-umass/cozGitHubplasma-umass/coz
- BSD 2-Clause, C
- Causal Profiling
- ZaMaZaN4iK/awesome-pgoGitHubZaMaZaN4iK/awesome-pgo
关联信息
反向链接、本文链接的其他页面和外部资料。
反向链接
- 可观察性笔记 · Awesome
Awesome · FAQ · Glossary · Logging - 日志 · 事件 · 文本 · 结构化 · 二进制 · Metrics - 指标 · label · Tracing - 跟踪 · Span · 参考 · The Three Pillars of Observability
站内链接
- Cortex笔记 · cortex
cortexproject/cortex · horizontally scalable, highly available, multi-tenant, long term storage for Prometheus. · 架构 · 提供远程写入接口
- Database Awesome笔记 · 通用时间序列数据库/time-series · time series
| name | stand for | · | Relational DBMS | 关系型数据库 | · | Key-value stores | KV 存储 | · | Document stores | 文档存储 | · | Time Series DBMS | 时序数据库 |
- M3笔记 · m3db/m3
m3db/m3 · Apache 2.0, Go · Distributed TSDB · 集群依赖 ETCD · Why · Why Choose M3DB for Logz.io Prometheus-as-a-Service · vs. Thanos & Cortex
- OpenObserve笔记 · openobserve
zinclabs/openobserve · Apache-2.0, Rust · 原 ZincObserve · 从 ZincSearch 演化而来 · Log & Trace & Metrics · 存储 Parquet + Datafusion
- promxy笔记 · promxy
jacksontj/promxy · 聚合多个 prometheus 进行查询 · config.yaml · nocache=1 for VictoriaMetrics QueryParams · VictoriaMetrics优化: · 添加 查询参数避免缓存问题
- Sentry笔记 · getsentry/sentry
getsentry/sentry · BSL, Python · error tracking and performance monitoring platform
- Thanos笔记 · thanos
thanos-io/thanos · Prometheus 长期存储 · 后端使用对象存储服务 · 多租户方案 · sidecar 配置 external label,使用多层 query · receive 接收多租户,但不推荐 · 适用于网络隔离场景,querier 无法直接访问 sidecar 时
- uptime-kuma笔记 · uptime-kuma
louislam/uptime-kuma · MIT, JS, Vue · 监控网站 uptime · https://demo.uptime.kuma.pet/
- VictoriaMetrics笔记 · victoria-metrics
VictoriaMetrics/VictoriaMetrics 是什么? · Apache-2.0, Golang · 时序数据库 · 高性能、低成本、大规模 · 支持集群 · 默认推荐单节点 - 小于 百万/s 的指标速率推荐单节点版本 - 通过垂直扩容/增加 CPU 内存来提升性能
References
GitHub37 条
- andrewrk/poopgithub.com/andrewrk/poop
- apache/skywalkinggithub.com/apache/skywalking
- argoproj/argo-rolloutsgithub.com/argoproj/argo-rollouts
- ccfos/nightingalegithub.com/ccfos/nightingale
- clickvisual/clickvisualgithub.com/clickvisual/clickvisual
- deepflowio/deepflowgithub.com/deepflowio/deepflow
- dianping/catgithub.com/dianping/cat
- erda-project/erdagithub.com/erda-project/erda
- google/mtailgithub.com/google/mtail
- grafana/mimirgithub.com/grafana/mimir
- grafana/pyroscopegithub.com/grafana/pyroscope
- highlight/highlightgithub.com/highlight/highlight
- hyperdxio/hyperdxgithub.com/hyperdxio/hyperdx
- hypertrace/hypertracegithub.com/hypertrace/hypertrace
- jacksontj/promxy/cmd/promxy/config.yamlgithub.com/jacksontj/promxy/blob/master/cmd/promxy/config.yaml
- jacksontj/promxy/pkg/servergroup/config.go#L96-L99github.com/jacksontj/promxy/blob/d4609ebcfd2a50d58f2115c1f079bf4779fc5515/pkg/servergroup/config.go
- keephq/keepgithub.com/keephq/keep
- louislam/uptime-kumagithub.com/louislam/uptime-kuma
- observIQ/bindplane-opgithub.com/observIQ/bindplane-op
- openobserve/openobservegithub.com/openobserve/openobserve
- opensearch-project/observabilitygithub.com/opensearch-project/observability
- opsre/WatchAlertgithub.com/opsre/WatchAlert
- parca-dev/parcagithub.com/parca-dev/parca
- pinpoint-apm/pinpointgithub.com/pinpoint-apm/pinpoint
- plasma-umass/cozgithub.com/plasma-umass/coz
- prometheus/alertmanagergithub.com/prometheus/alertmanager
- prymitive/karmagithub.com/prymitive/karma
- sansan0/TrendRadargithub.com/sansan0/TrendRadar
- SigNoz/signozgithub.com/SigNoz/signoz
- spinnaker/kayentagithub.com/spinnaker/kayenta
- sunface/datavgithub.com/sunface/datav
- teletrace/teletracegithub.com/teletrace/teletrace
- timescale/promscale/cmd/prom-migratorgithub.com/timescale/promscale/tree/master/cmd/prom-migrator
- trickstercache/trickstergithub.com/trickstercache/trickster
- upptime/upptimegithub.com/upptime/upptime
- uptrace/uptracegithub.com/uptrace/uptrace
- ZaMaZaN4iK/awesome-pgogithub.com/ZaMaZaN4iK/awesome-pgo
其他外链3 条
- demo.uptime.kuma.petdemo.uptime.kuma.pet/
- opentelemetry.io/ecosystem/vendorsopentelemetry.io/ecosystem/vendors
- signoz.io/docs/architecturesignoz.io/docs/architecture