こんにちは。今日は、マイクロサービス環境での異常の検出について説明します。この投稿は、DevOps Live 2020オンライン会議で行った40分間のレポートの短い要約です。長い間書かないように、マイクロサービスの監視を自動化するためのメトリック値の分布の異常を検出するためのツールの概要に焦点を当てることにしました。これは、どのチームでもすぐに使用できます。 ..。
SREおよびDevOpsのマイクロサービスへの移行に伴い、アラートを意味のある信号に変換し、MTTDを削減し、分散環境の監視におけるアラートの構成を簡素化することに関連するタスクの優先度が大幅に向上したため、異常検出のトピックは現在非常に重要です。

, , , .
"" .
, , .
?
?
, :
- latency ;
- ;
- .
"" , - , .
, :
- ;
- , ;
- «» , .
, , , ?
:
- c ;
- APM ;
- as a Service.
.
Prometheus , time series .
recording rules, , .
, , , ( " ").
, , z- (z-score) — , , .
http_requests_total, :
# - record: job:http_requests:rate5m expr: sum by (app) (rate(http_requests_total[5m]))
:
# average - - record: job:http_requests:rate5m:avg_over_time_1w expr: avg_over_time(job:http_requests:rate5m[1w]) # stddev - - record: job:http_requests:rate5m:stddev_over_time_1w expr: stddev_over_time(job:http_requests:rate5m[1w]) # z- (job:http_requests:rate5m - job:http_requests:rate5m:avg_over_time_1w ) / job:http_requests:rate5m:stddev_over_time_1w

( , latency) — , , .
— .
, .
.
, — z-.

Prometheus — PAD
Prometheus Anomaly Detector (PAD), Red Hat, , .
PAD Prometeheus , PAD recording rules, , , Prophet, .

PAD Grafana .

, proof of concept.
APM
(Application Performance Monitoring) AIOps — , , .
, .
New Relic
New Relic baseline ( ) — , EUM, .
— baseline, ( , , ).
, , , , baseline.
, .

2020 — New Relic Applied Intelligence (AI).
New Relic AI KPI .
/ .

AppDynamics
AppDynamics APM baseline KPI- .
baseline , , (, ) , baseline.

, , health rule .
, baseline health rule.

Dynatrace
Dynatrace " " , .

:
- KPI
.


Instana
Instana " " 230 "" , KPI .
latecy, error rate, traffic ( ).

E-Divisive with Medians (EDM).

, , baseline.
"" "" , .
baseline — .
EUM.

as a Service
APM , Prometheus , , SaaS .
Azure Metric Advisor
Microsoft — Azure Metric Advisor .
, , e-commerce.
(SQL Server, ElasticSearch, InfluxDB, MongoDB, MySQL, PostgreSQL ), Prometheus .

Anodot
— Prometheues -.
-, SRE .
e-commerce, gaming .

AnomalyIO
, , , , InfluxDB.
, InfluxDB, , .

- .
- – , .
- Prometheus — .
- APM AIOps, .
.