Метрики приложения
Приложение может отдавать бизнес-метрики в формате, совместимом с Prometheus, что позволяет настроить стек Prometheus+Grafana для анализа и мониторинга.
При установке через ansible метрики неободимо снимать с каждой ноды:
- путь
/metrics
, порт8081
При установке в k8s метрики необходимно снимать с подов:
zakroma-storage-composer
, путь/metrics
zakroma-storage-core
путь/metrics
zakroma-storage-worker
путь/metrics
Метрики Закрома.Хранение
Название | Описание | Тип метрики |
---|---|---|
zakroma_requests_counter | Количество запросов в разрезе операций S3 | counter |
zakroma_requests_duration | Длительность обработки запросов в разрезе операций S3 | histogramm |
zakroma_bucket_objects_count | Количество объектов в бакете | gauge |
zakroma_bucket_objects_size | Размер бакетов, в байтах | gauge |
zakroma_bucket_parts_count | Количество частей объектов в бакете | gauge |
zakroma_bucket_parts_size | Размер частей файлов в бакете, в байтах | gauge |
zakroma_bucket_uploads_count | Количество загруженных файлов в бакете | gauge |
zakroma_bucket_uploads_size | Размер загруженных файлов в бакете | gauge |
zakroma_core_requests_counter | Количество запросов к подсистеме core в разрезе операций S3 | counter |
zakroma_core_requests_duration | Длительность обработки запросов к подсистеме core в разрезе операций S3 | histogram |
zakroma_storage_banners_count | Количество баннеров в хранилище | gauge |
zakroma_storage_parts_count | Количество частей файлов в хранилище | gauge |
zakroma_storage_parts_size | Размер частей файлов в хранилище | gauge |
zakroma_workspace_objects_count | Количество объектов в рабочей области | gauge |
zakroma_workspace_objects_size | Размер рабочей области, в байтах | gauge |
zakroma_workspace_parts_count | Количество частей объектов в рабочей области | gauge |
zakroma_workspace_parts_size | Размер частей файлов в рабочей области, в байтах | gauge |
zakroma_workspace_uploads_count | Количество загруженных файлов в рабочей области | gauge |
zakroma_workspace_uploads_size | Размер загруженных файлов в рабочей области | gauge |
zakroma_worker_0_requests_counter | Количество запросов к подсистеме worker в разрезе операций S3 | counter |
zakroma_worker_0_requests_duration | Длительность обработки запросов к подсистеме worker в разрезе операций S3 | histogram |
Примеры ServiceMonitor для Prometheus
1apiVersion: monitoring.coreos.com/v1 2kind: ServiceMonitor 3metadata: 4 name: zakroma-storage-composer-servicemonitor 5 namespace: monitoring 6spec: 7 endpoints: 8 - interval: 5s 9 path: /metrics 10 port: aux-http 11 namespaceSelector: 12 matchNames: 13 - zakroma-storage 14 selector: 15 matchLabels: 16 app.kubernetes.io/name: zakroma-storage-composer
1apiVersion: monitoring.coreos.com/v1 2kind: ServiceMonitor 3metadata: 4 name: zakroma-storage-core-servicemonitor 5 namespace: monitoring 6spec: 7 endpoints: 8 - interval: 5s 9 path: /metrics 10 port: aux-http 11 namespaceSelector: 12 matchNames: 13 - zakroma-storage 14 selector: 15 matchLabels: 16 app.kubernetes.io/name: zakroma-storage-core
1apiVersion: monitoring.coreos.com/v1 2kind: ServiceMonitor 3metadata: 4 name: zakroma-storage-worker-0-servicemonitor 5 namespace: monitoring 6spec: 7 endpoints: 8 - interval: 5s 9 path: /metrics 10 port: aux-http 11 namespaceSelector: 12 matchNames: 13 - zakroma-storage 14 selector: 15 matchLabels: 16 app.kubernetes.io/name: zakroma-storage-worker 17 zakroma-worker-index: worker0 18
1apiVersion: monitoring.coreos.com/v1 2kind: ServiceMonitor 3metadata: 4 name: zakroma-storage-worker-1-servicemonitor 5 namespace: monitoring 6spec: 7 endpoints: 8 - interval: 5s 9 path: /metrics 10 port: aux-http 11 namespaceSelector: 12 matchNames: 13 - zakroma-storage 14 selector: 15 matchLabels: 16 app.kubernetes.io/name: zakroma-storage-worker 17 zakroma-worker-index: worker1