Мониторинг
Информация о состоянии сервера осно вывается на метриках. В таблице ниже предоставлены доступные метрики и их описания.
Зеленым цветом выделены ключевые метрики.
| Metric Name | Metric Type | Description |
|---|---|---|
| go_gc_duration_seconds | summary | Сводка длительности пауз циклов сборки мусора |
| go_gc_duration_seconds_count | counter | Сводка длительности пауз циклов сборки мусора |
| go_gc_duration_seconds_sum | counter | Сумма длительности паузы циклов сборки мусора |
| go_goroutines | gauge | Количество текущих горутин |
| go_info | gauge | Информация о среде выполнения |
| go_memstats_alloc_bytes | gauge | Количество выделенных и все еще используемых байтов |
| go_memstats_alloc_bytes_total | counter | Общее количество выделенных байтов, даже если они были освобождены |
| go_memstats_buck_hash_sys_bytes | gauge | Количество байтов, используемых хэш-таблицей профилирования |
| go_memstats_frees_total | counter | Общее количество "освобожденных" объектов кучи |
| go_memstats_gc_sys_bytes | gauge | Количество байтов, используемых для метаданных системы сборки мусора |
| go_memstats_heap_alloc_bytes | gauge | Количество выделенных и все еще используемых байтов кучи |
| go_memstats_heap_idle_bytes | gauge | Количество байтов кучи в ожидании использования |
| go_memstats_heap_inuse_bytes | gauge | Количество байтов кучи, используемых в данный момент |
| go_memstats_heap_objects | gauge | Количество выделенных объектов |
| go_memstats_heap_released_bytes | gauge | Количество байтов кучи, освобожденных в ОС |
| go_memstats_heap_sys_bytes | gauge | Количество байтов кучи, полученных от системы |
| go_memstats_last_gc_time_seconds | gauge | Количество секунд с 1970 года последней сборки мусора |
| go_memstats_lookups_total | counter | Общее количество поисков указателей |
| go_memstats_mallocs_total | counter | Общее количество выделений памяти |
| go_memstats_mcache_inuse_bytes | gauge | Количество байтов, используемых структурами mcache |
| go_memstats_mcache_sys_bytes | gauge | Количество байтов, используемых структурами mcache, полученных из системы |
| go_memstats_mspan_inuse_bytes | gauge | Количество байтов, используемых структурами mspan |
| go_memstats_mspan_sys_bytes | gauge | Количество байтов, используемых структурами mspan, полученных из системы |
| go_memstats_next_gc_bytes | gauge | Количество байтов кучи при следующей сборке мусора |
| go_memstats_other_sys_bytes | gauge | Количество байтов, используемых для других системных выделений |
| go_memstats_stack_inuse_bytes | gauge | Количество байтов, используемых выделителем стека |
| go_memstats_stack_sys_bytes | gauge | Количество байтов, полученных от системы для выделителя стека |
| go_memstats_sys_bytes | gauge | Количество байтов, полученных от системы |
| go_threads | gauge | Количество созданных ОС потоков |
| healthcheck | gauge | Индикатор проверки состояния процесса (0 или 1) |
| process_cpu_seconds_total | counter | Общее количество времени CPU пользователя и системы в секундах |
| process_max_fds | gauge | Максимальное количество открытых дескрипторов файлов |
| process_open_fds | gauge | Количество открытых дескрипторов файлов |
| process_resident_memory_bytes | gauge | Размер резидентной памяти в байтах |
| process_start_time_seconds | gauge | Время запуска процесса с начала эпохи Unix в секундах |
| process_virtual_memory_bytes | gauge | Размер виртуальной памяти в байтах |
| process_virtual_memory_max_bytes | gauge | Максимальный объем доступной виртуальной памяти в байтах |
| promhttp_metric_handler_requests_in_flight | counter | Количество обрабатываемых запросов в моменте на ручке /metrics |
| promhttp_metric_handler_requests_total | counter | Котичество запросов на ручку /metrics |
| server_grpc_connections | gauge | Количество подключенных на данный момент агентов |
| server_grpc_response_time_sum | histogram | Суммарная гистограмма времени ответа по всем методам |
| server_grpc_response_time_count | histogram | Гистограмма времени ответа по каждому методу |
| server_grpc_response_time_bucket | histogram | Гистограмма времени ответа |
| server_grpc_methods_started | counter | Количество заходов в метод |
| server_grpc_methods_finished | counter | Количество выходов из метод |
| server_grpc_messages | counter | Количество полученных и отправленных сообщений |
| nftables_up | counter | Удачен ли сбор данных для метрик (1 или 0) |
| nftables_counter_bytes | counter | Количество байтов на табличном каунтере |
| nftables_counter_packets | counter | Количество пакетов на табличном каунтере |
| nftables_table_chains | counter | Количество цепочек в таблице |
| nftables_chain_rules | counter | Количество количество правил в цепочке |
| nftables_rule_bytes | counter | Количество байтов у правила |
| nftables_rule_packets | counter | Количество пакетов у правила |
Для подключения или отключения сбора метрик необходимо настроить следующие поля metrics.enable, healthcheck.enable и profile.enable установив значение true - чтобы включить или false - чтобы выключить (по умолчанию true).
telemetry:
useragent: "string"
nft-collector:
min-frequency: 1s
endpoint: 127.0.0.1:5000
metrics:
enable: true
healthcheck:
enable: true
profile:
enable: true