Custom Database Queries: различия между версиями
ENetrebin (обсуждение | вклад) |
ENetrebin (обсуждение | вклад) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 1: | Строка 1: | ||
'''''[[Расширения]] / [[Расширения#.D0.A0.D0.B0.D1.81.D1.88.D0.B8.D1.80.D0.B5.D0.BD.D0.B8.D1.8F%202.0|Расширения 2.0]] / Custom Database Queries''''' | |||
Делайте общие запросы к базам данных Oracle, Postgres, MSSQL, MySQL, DB2, Informix или SAP HANA и отправляйте метрики в Ключ-АСТРОМ. | Делайте общие запросы к базам данных Oracle, Postgres, MSSQL, MySQL, DB2, Informix или SAP HANA и отправляйте метрики в Ключ-АСТРОМ. | ||
Строка 97: | Строка 99: | ||
** Если пусто, запрос будет выполняться каждую минуту | ** Если пусто, запрос будет выполняться каждую минуту | ||
* (Необязательно) Запрос (1–10) — столбцы значений | * (Необязательно) Запрос (1–10) — столбцы значений | ||
** Какие столбцы вы хотели бы отправить обратно в | ** Какие столбцы вы хотели бы отправить обратно в Ключ-АСТРОМ в виде метрик, разделенных запятыми | ||
** Пример: Для запроса<code>SELECT JOB_ID, DURATION, STATUS FROM JOBS</code> | ** Пример: Для запроса<code>SELECT JOB_ID, DURATION, STATUS FROM JOBS</code> | ||
** Вы можете отправить <code>DURATION,STATUS</code>как значение. Эти столбцы должны быть числами | ** Вы можете отправить <code>DURATION,STATUS</code>как значение. Эти столбцы должны быть числами |
Текущая версия на 15:18, 3 сентября 2024
Расширения / Расширения 2.0 / Custom Database Queries
Делайте общие запросы к базам данных Oracle, Postgres, MSSQL, MySQL, DB2, Informix или SAP HANA и отправляйте метрики в Ключ-АСТРОМ.
Обзор
Пользовательское расширение запросов к БД
Это специальное расширение АктивногоШлюза позволяет выполнять запросы к базам данных Oracle, MSSQL, MySQL, DB2, PostgreSQL, Informix или SAP HANA и отправлять результаты обратно в Ключ-АСТРОМ в виде метрик.
Случаи Использования
Вы можете использовать это расширение для ввода бизнес-данных, показателей обработки заданий, статистики базы данных и таблиц, всего, что хранится в ваших базах данных.
Примеры запросов
SELECT COUNT(*) FROM DAILY_PROCESSED_JOBS
SELECT DEPARTMENT, EMPLOYEE_COUNT FROM DEPARTMENTS
Информация О Совместимости
Это расширение использует JDBC для подключения к различным базам данных. Вот версии драйверов JDBC, которые мы используем. Пожалуйста, обратитесь к документации драйвера JDBC, чтобы узнать, какую версию базы данных они поддерживают.
- mssql-jdbc-9.4.0.jre8.jar
- mysql-connector-java-8.0.26.jar
- ojdbc11.jar
- postgresql-42.3.3.jar
- jdbc-4.50.7.1.jar
- db2jcc4.jar
- ngdbc-2.14.7.jar ПРИМЕЧАНИЕ. Его необходимо загрузить и развернуть вручную. См. Установка.
Установка
Требования
- Среда Linux или Windows АктивныйШлюз
- Сетевой доступ с компьютера АктивномуШлюзу к целевой базе данных
- Имя пользователя и пароль для доступа к базе данных и выполнения настроенных вами запросов.
- Примечание . Проверка подлинности Windows в настоящее время не поддерживается.
- Для SAP HANA файл jar необходимо загрузить отсюда: ngdbc-2.14.7.jar.
Установка
Существует два шага для установки расширения АктивногоШлюза:
- Среда Сервер АктивногоШлюза — извлеките zip-файл с расширением в папку plugin_deployment удаленного подключаемого модуля.
- При установке по умолчанию это делается с помощью
unzip -o -d /opt/astromkey/remotepluginmodule/plugin_deployment custom.remote.python.dbquery.zip
- Скорректируйте путь, если АктивныйШлюз был установлен не в
/opt/astromkey
- При установке по умолчанию это делается с помощью
- (Необязательно) Для SAP HANA поместите файл ngdbc-2.14.7.jar в
../plugin_deployment/custom.remote.python.dbquery/jars/
каталог. - Браузер — загрузите
custom.remote.python.dbquery.zip
файл в ваш тенантSettings > Monitored technologies > Custom extensions > Upload extension
Конфигурация
Конфигурация
Создайте конечную точку для каждой базы данных, которую вы хотите запросить.
Это делается вSettings > Monitored technologies > Custom extensions > Generic DB Query Plugin
Вы можете запускать до 10 запросов одновременно, чтобы выполнить более 10 запросов, создайте больше конечных точек для одной и той же базы данных.
Параметры:
- Токен API Astromkey
- Токен API, ему нужны
Api V2 - Metric Ingest
разрешения
- Токен API, ему нужны
- Имя группы
- Понятное имя для группировки этих запросов
- Пользовательское имя устройства
- Понятное имя пользовательского устройства, к которому можно прикрепить метрики, используемые для оповещений и информационных панелей.
- Уровень журнала
- Отправка статистику
- Отправка статистику на пользовательское устройство, такую как состояние запроса, продолжительность, строки (оставьте это включенным во время тестирования)
- Тип базы данных
- Поддерживаются Oracle, MSSQL, MySQL, DB2, PostgreSQL и Informix.
- Имя хоста
- Порт
- Имя пользователя
- Пароль
- Тип слушателя Oracle
- Имя службы или SID, используется только в том случае, если тип базы данных — Oracle.
- База данных
- Имя базы данных. В случае Oracle это SID или имя службы.
- (Необязательно) JDBC — строка подключения
- Иногда нужны дополнительные опции при подключении к базе данных, например:
- Установка намерения для соединения MSSQL:
jdbc:sqlserver://10.1.2.3:1433;databaseName=master;applicationIntent=ReadOnly
- Включение SSL для соединения с DB2:
jdbc:db2://myserver:5055/my_db:sslConnection=true;
- Установка намерения для соединения MSSQL:
- НЕ добавляйте имя пользователя и пароль в строку подключения
- При использовании строки подключения имя хоста, порт и параметры базы данных игнорируются.
- Иногда нужны дополнительные опции при подключении к базе данных, например:
- (Необязательно) путь Java
- Путь к двоичному файлу Java (должен быть java 11 или выше), который будет использоваться, если оставить его пустым, он будет использовать АктивныйШлюз JVM.
- (Необязательно) Дополнительные аргументы Java
- Дополнительные аргументы JVM, пример (введите один аргумент в строке): -Xmx60m
- Время ожидания запросов
- Время ожидания в минутах
- Запрос (1-10) - Имя
- Имя этой метрики, если оно пусто, этот запрос будет проигнорирован.
- Запрос (1-10) — Строка запроса
- Текст запроса
- Это может быть простой запрос, например
SELECT COUNT(*) FROM JOBS
, где возвращается одно число. - Или более сложный запрос, например
SELECT JOB_ID, DURATION, STATUS FROM JOBS
. В этом случае заполните столбцы и значения параметров ниже
- (Необязательно) Запрос (1-10) - Расписание
- Расписание, оно использует формат cron, вы можете использовать веб-сайт https://crontab.guru, чтобы помочь вам создать расписание
- Если пусто, запрос будет выполняться каждую минуту
- (Необязательно) Запрос (1–10) — столбцы значений
- Какие столбцы вы хотели бы отправить обратно в Ключ-АСТРОМ в виде метрик, разделенных запятыми
- Пример: Для запроса
SELECT JOB_ID, DURATION, STATUS FROM JOBS
- Вы можете отправить
DURATION,STATUS
как значение. Эти столбцы должны быть числами - Если пусто, возвращается значение первого столбца первой строки.
- (Необязательно) Запрос (1–10) — столбцы измерения
- Какие столбцы вы хотели бы использовать в качестве параметров для метрики, разделенные запятыми
- Пример: Для запроса
SELECT JOB_ID, DURATION, STATUS FROM JOBS
- Вы можете выбрать отправку
JOB_ID
в качестве измерения, тогда у вас будет метрика для каждого job_id
- (Необязательно) Запрос (1–10) — Дополнительные параметры
key=Value
пары, которые будут добавлены как дополнительные жестко закодированные измерения- Может использоваться для таких вещей, как
environment=PROD,database=USERS
Пример конечной точки Oracle
Пример конечной точки Informix
Визуализация
Данные отправляются с помощью нашего API Metric Ingest, поэтому для создания диаграмм необходимо использовать обозреватель данных.
Имя метрики всегда custom.db.query
, доступ к различным запросам осуществляется через Query Name
параметр
Мониторинг
Если Send Statistics
этот параметр включен, вы также можете отслеживать свои запросы, перейдя кTechnologies > Custom SQL > DBQuery Monitoring
Любые ошибки при выполнении запросов также будут отправлены на это пользовательское устройство какCUSTOM_INFO_EVENTS