Как правило, в рабочей среде необходимо включить механизмы мониторинга в развертывании Apigee Edge для частного облака. Эти методы мониторинга предупреждают администраторов (или операторов) сети об ошибке или сбое. Каждая ошибка, которая возникает, регистрируется в Apigee Edge как оповещение. Дополнительные сведения об оповещениях можно найти в статье Рекомендации по мониторингу.
Компоненты Apigee делятся на две основные категории:
- Сервисы Java Server, относящиеся к Apigee. К ним относятся сервер управления, Message Processor, сервер Qpid и сервер Postgres.
- Сторонние сервисы. К ним относятся Nginx Router, Apache Cassandra, Apache ZooKeeper, OpenLDAP, база данных PostgreSQL и Qpid.
В таблице ниже приведены параметры, которые можно отслеживать при локальном развертывании Apigee Edge:
| Компонент | Системные проверки | Статистика на уровне процессов | Проверки уровня API | Проверки потока сообщений | Для определенного компонента | |
|---|---|---|---|---|---|---|
|
Сервисы Java, относящиеся к Apigee |
Сервер управления |
|||||
|
Message Processor |
||||||
|
Сервер Qpid |
||||||
|
Сервер Postgres |
||||||
|
Сторонние сервисы |
Apache Cassandra |
|||||
|
Apache ZooKeeper |
||||||
|
OpenLDAP |
||||||
|
База данных PostgreSQL |
||||||
|
Qpid |
||||||
|
Маршрутизатор Nginx |
||||||
После установки Apigee Edge можно выполнять следующие задачи по мониторингу, чтобы отслеживать производительность установки Apigee Edge для частного облака.

Проверки состояния системы
Очень важно измерять параметры работоспособности системы, такие как использование ЦП, использование памяти и подключение портов, на более высоком уровне. Чтобы получить базовую информацию о состоянии системы, можно отслеживать следующие параметры:
- Использование ЦП. Основная статистика (пользователь/система/ожидание ввода-вывода/бездействие) об использовании ЦП. Например, общее использование ЦП системой.
- Свободная/используемая память. Показывает, сколько системной памяти используется в байтах. Например, физическая память, используемая системой.
- Использование дискового пространства. Информация о файловой системе на основе текущего использования диска. Например, место на жестком диске, используемое системой.
- Средняя нагрузка. Количество процессов, ожидающих выполнения.
- Статистика сети. Пакеты и/или байты, переданные и полученные по сети, а также ошибки передачи, связанные с определенным компонентом.
Проверки процессов и приложений
На уровне процесса можно посмотреть важную информацию обо всех запущенных процессах. Например, это статистика использования памяти и ЦП процессом или приложением. Для таких процессов, как Qpid, Postgres Postmaster, Java и т. д., можно отслеживать следующие показатели:
- Идентификация процесса. Определите конкретный процесс Apigee. Например, вы можете отслеживать наличие процесса Java на сервере Apigee.
- Статистика потоков. Позволяет просматривать основные шаблоны потоков, используемые процессом. Например, вы можете отслеживать пиковое количество потоков и количество потоков для всех процессов.
- Использование памяти. Показывает, как используется память всеми процессами Apigee. Например, вы можете отслеживать такие параметры, как использование памяти кучи и памяти вне кучи, используемой процессом.
Проверки на уровне API
На уровне API можно отслеживать, работает ли сервер, для часто используемых вызовов API, которые проксируются Apigee. Например, вы можете выполнить проверку API на сервере управления, маршрутизаторе и Message Processor, вызвав следующую команду curl:
curl http://host:port/v1/servers/self/up
где host – IP-адрес компонента Apigee Edge. Номер port относится к определенному компоненту Edge. Пример:
Сервер управления: 8080
- Маршрутизатор: 8081
- Процессор сообщений: 8082
- другие подобные критерии.
Информацию о том, как выполнить эту команду для каждого компонента, можно найти в разделах ниже.
Этот вызов возвращает значения "истина" и "ложь". Чтобы получить более точные результаты, вы также можете отправлять вызовы API непосредственно в серверную часть (с которой взаимодействует ПО Apigee), чтобы быстро определить, где возникла ошибка – в среде ПО Apigee или в серверной части.
Проверки потока сообщений
Вы можете собирать данные о потоке сообщений из маршрутизаторов и процессоров сообщений. Это позволяет отслеживать:
- Количество активных клиентов
- Количество ответов (10X, 20X, 30X, 40X и 50X)
- Неудачные подключения
Это поможет вам создавать панели управления для потока сообщений API. Подробнее о том, как отслеживать эффективность экспериментов…
Проверка работоспособности маршрутизатора Message Processor
Маршрутизатор реализует механизм проверки состояния, чтобы определить, какие из процессоров сообщений
работают должным образом. Если процессор сообщений работает медленно или не работает, маршрутизатор может автоматически исключить его из ротации. В этом случае маршрутизатор записывает сообщения "Mark Down" в файл журнала маршрутизатора по адресу /opt/apigee/var/log/edge-router/logs/system.log.
Вы можете отслеживать эти сообщения в файле журнала маршрутизатора. Например, если маршрутизатор выводит обработчик сообщений из ротации, он записывает в журнал сообщение в следующем формате:
2014-05-06 15:51:52,159 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now DISCONNECTED. handle = MP_IP at 1399409512159 2014-04-17 12:54:48,512 org: env: nioEventLoopGroup-2-2 INFO HEARTBEAT - HBTracker.gotResponse() : No HeartBeat detected from /MP_IP:PORT Mark Down
где MP_IP:PORT – IP-адрес и номер порта Message Processor.
Если позже маршрутизатор выполнит проверку работоспособности и определит, что Message Processor работает правильно, он автоматически вернет его в ротацию. Маршрутизатор также записывает в журнал сообщение "Mark Up" в следующем формате:
2014-05-06 16:07:29,054 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now CONNECTED. handle = IP at 1399410449054 2014-04-17 12:55:06,064 org: env: nioEventLoopGroup-4-1 INFO HEARTBEAT - HBTracker.updateHB() : HeartBeat detected from IP:PORT Mark Up