Расширение Apache CouchDB

Материал из Документация Ключ-АСТРОМ

Расширение Apache CouchDB

Интеллектуальное наблюдение и оптимизация здоровья и производительности вашей базы данных.

Начало работы

Обзор

Автоматическое обнаружение всех приложений и микросервисов, развёрнутых в вашей системе.

Ключ-АСТРОМ обеспечивает автоматическую сквозную трассировку вплоть до отдельного оператора базы данных, метрики сервера базы данных и аналитику логов. Ключ-АСТРОМ визуализирует зависимости приложения от базы данных для SQL и NoSQL баз данных, а также для облачных и самостоятельно размещённых баз данных. Он диагностирует аномалии в реальном времени с помощью ИИ и определяет первопричину вплоть до медленно выполняющихся или ошибочных SQL-операторов. Глубокое понимание на уровне кода в сочетании с облачно-нативным мониторингом сервера базы данных поможет вам обеспечить надёжную производственную среду.

Мониторинг сервера Apache CouchDB в Ключ-АСТРОМ предоставляет обзор кластера и все соответствующие метрики нод.

Если ваша установка Apache CouchDB работает недостаточно производительно или возникает проблема, Ключ-АСТРОМ немедленно сообщает вам об этом и показывает, какие ноды затронуты. Затем вы можете детализировать метрики отдельных нод, чтобы найти первопричины проблем и потенциальные узкие места.

Варианты использования

  • Понимание всех зависимостей ваших приложений от базы данных, какие операторы базы данных выполняются и их производительность.
  • Улучшение производительности вашего приложения путём сокращения или оптимизации типичных шаблонов работы с базой данных, таких как проблема запроса 1+N.
  • Понимание влияния ваших приложений на ресурсы базы данных.
  • Понимание влияния нехватки ресурсов, блокировок или других проблем базы данных на ваше приложение путём наблюдения за самим сервером базы данных.

Требования

  • Виртуальная машина: если ваш Apache CouchDB работает непосредственно на виртуальной машине, установите ЕдиныйАгент на эту виртуальную машину, чтобы начать.
  • Рабочая нагрузка Kubernetes: если ваш Apache CouchDB работает как рабочая нагрузка в Kubernetes, настройте Ключ-АСТРОМ на Kubernetes.
  • Рабочая нагрузка OpenShift: если ваш Apache CouchDB работает как рабочая нагрузка в OpenShift, настройте Ключ-АСТРОМ на OpenShift.
  • Расширение: активируйте расширение CouchDB для получения полной аналитики метрик, включая события.

Информация о совместимости

  • Пользователь CouchDB с доступом к конечным точкам /_membership и /_node.
  • Linux или Windows OS
  • CouchDB 3+

Активация и настройка

  1. Выберите «Добавить в среду».
  2. Создайте конфигурацию мониторинга.
  3. Выберите группу АктивныйШлюз, которая будет выполнять расширение. Выбранные АктивныеШлюзы должны иметь возможность установить соединение с кластером CouchDB на порту, который использует кластер (по умолчанию — 5984).
  4. Выберите «Создать конечную точку».
  5. Укажите URL кластера CouchDB, который вы хотите отслеживать.
  6. Задайте «Имя пользователя» и «Пароль». Мы рекомендуем сначала создать учётные данные в хранилище учётных данных, а затем выбрать опцию «Хранилище учётных данных», чтобы выбрать ваши учётные данные CouchDB.
  7. Задайте интервал запросов. Для лучших результатов мы рекомендуем интервал 1–5 минут.

Детали

  1. В меню Ключ-АСТРОМ перейдите в раздел Дашборды.
  2. Выберите дашборд «Обзор расширения CouchDB».
  3. Этот дашборд предоставляет обзор кластеров и нод CouchDB, которые отслеживаются в вашей среде.
  4. Выберите ссылки «Кластер» и «Нода», чтобы получить список всех отслеживаемых кластеров и нод.
  5. Выберите отдельный кластер или ноду для детальных метрик.

Доступ к дашборду также возможен с экрана конфигурации расширения при нажатии зелёной кнопки «Перейти к дашборду».

DQL и логи

Активируйте мониторинг логов для получения полной аналитики логов.

Наборы функций

При активации расширения с помощью конфигурации мониторинга вы можете ограничить мониторинг одним из наборов функций. Для корректной работы расширение должно собрать хотя бы одну метрику после активации.

В сильно сегментированных сетях наборы функций могут отражать сегменты вашей среды. Затем при создании конфигурации мониторинга вы можете выбрать набор функций и соответствующую группу АктивныйШлюз, которая может подключиться к этому конкретному сегменту.

Все метрики, не отнесённые ни к одному набору функций, считаются стандартными и всегда сообщаются.

Метрика наследует набор функций подгруппы, которая, в свою очередь, наследует набор функций группы. Кроме того, набор функций, определённый на уровне метрики, переопределяет набор функций, определённый на уровне подгруппы, который, в свою очередь, переопределяет набор функций, определённый на уровне группы.

default

Название метрики Ключ метрики Описание
Erlang memory
couchdb.couchdb_erlang_memory_bytes
Память, выделенная виртуальной машиной Erlang.
Database reads
couchdb.couchdb_database_reads_total.count
Количество раз, когда документ был прочитан из базы данных.
Database writes
couchdb.couchdb_database_writes_total.count
Количество раз, когда база данных была изменена.
Open databases
couchdb.couchdb_open_databases_total.count
Количество открытых баз данных.
Open OS files
couchdb.couchdb_open_os_files_total.count
Количество файловых дескрипторов, открытых CouchDB.
Request time
couchdb.couchdb_request_time_seconds
Время обработки запроса в виде гистограммы.
Uptime
couchdb.couchdb_uptime_seconds
Время в секундах с момента запуска ноды CouchDB.

base metrics

Название метрики Ключ метрики Описание
HTTP bulk requests
couchdb.couchdb_httpd_bulk_requests_total.count
Количество массовых запросов.
HTTP request methods
couchdb.couchdb_httpd_request_methods.count
Разбивка по методу для метрик COPY, DELETE, GET, HEAD, POST и PUT
HTTP status codes
couchdb.couchdb_httpd_status_codes
Разбивка по 'Коду ответа' для детализации статус-кодов
HTTP temporary view reads
couchdb.couchdb_httpd_temporary_view_reads_total.count
Количество запросов к временным индексам представлений.
HTTP view reads
couchdb.couchdb_httpd_view_reads_total.count
Количество запросов к индексам представлений.
HTTP view timeouts
couchdb.couchdb_httpd_view_timeouts_total.count
Количество HTTP-запросов к представлениям, которые истекли до завершения.
Request time count
couchdb.couchdb_request_time_seconds_count.gauge
Общее количество обработанных HTTP-запросов, используется вместе с суммой времени запросов для вычисления средней задержки.
Request time sum
couchdb.couchdb_request_time_seconds_sum
Совокупная сумма всех времён обработки HTTP-запросов в секундах, используется вместе с количеством времени запросов для вычисления средней задержки.

couchReplicator

Название метрики Ключ метрики Описание
Replicator changes manager deaths
couchdb.couchdb_couch_replicator_changes_manager_deaths_total.count
Количество сбоев процесса менеджера изменений репликатора.
Replicator changes queue deaths
couchdb.couchdb_couch_replicator_changes_queue_deaths_total.count
Количество сбоев процесса очереди изменений репликатора.
Replicator changes reader deaths
couchdb.couchdb_couch_replicator_changes_reader_deaths_total.count
Количество сбоев процесса читателя изменений репликатора.
Replicator cluster is stable
couchdb.couchdb_couch_replicator_cluster_is_stable
Стабильно ли членство в кластере репликатора (1) или находится в изменении (0).
Replicator connection owner crashes
couchdb.couchdb_couch_replicator_connection_owner_crashes_total.count
Количество сбоев процесса владельца соединения репликатора.
Replicator connection worker crashes
couchdb.couchdb_couch_replicator_connection_worker_crashes_total.count
Количество сбоев процесса рабочего соединения репликатора.
Replicator jobs crashes
couchdb.couchdb_couch_replicator_jobs_crashes_total.count
Общее количество сбоев заданий репликации по всем заданиям.
Replicator jobs pending
couchdb.couchdb_couch_replicator_jobs_pending
Количество заданий репликации, ожидающих запуска в данный момент.

couchLog

Название метрики Ключ метрики Описание
Log requests total
couchdb.couchdb_couch_log_requests_total.count
Количество сообщений лога, созданных CouchDB, с разбивкой по уровню серьёзности.

Расширения

Изучите в разделе Расширения.