Установка ЕдиногоАгента на Z/OS: различия между версиями

Материал из Документация Ключ-АСТРОМ
 
(не показана 1 промежуточная версия этого же участника)
Строка 1449: Строка 1449:
Узнайте, как настроить подсистему '''zDC''' в зависимости от ваших потребностей.
Узнайте, как настроить подсистему '''zDC''' в зависимости от ваших потребностей.


== Команды z/OS MODIFY ==
=== Команды z/OS MODIFY ===
Формат команды [https://www.ibm.com/docs/en/zos/2.5.0?topic=reference-modify-command z/OS MODIFY] определяется следующим образом:
Формат команды [https://www.ibm.com/docs/en/zos/2.5.0?topic=reference-modify-command z/OS MODIFY] определяется следующим образом:
{| class="wikitable"
{| class="wikitable"
Строка 1688: Строка 1688:
# Перезапустите '''zDC'''.
# Перезапустите '''zDC'''.


== Завершение zDC ==
=== Завершение zDC ===
'''zDC''' обычно освобождает системные ресурсы (особенно общее хранилище), когда он завершается из-за команды выключения или ненормально из-за команды отмены или аварийного завершения программы. Процедуры восстановления ('''ESTAEX''') всегда действуют для перехвата ненормальных завершений и освобождения всех системных ресурсов.
'''zDC''' обычно освобождает системные ресурсы (особенно общее хранилище), когда он завершается из-за команды выключения или ненормально из-за команды отмены или аварийного завершения программы. Процедуры восстановления ('''ESTAEX''') всегда действуют для перехвата ненормальных завершений и освобождения всех системных ресурсов.


Строка 3096: Строка 3096:
# Сохраните изменения и перезапустите шлюз '''IMS SOAP'''.
# Сохраните изменения и перезапустите шлюз '''IMS SOAP'''.


== Ведение логов ==
=== Ведение логов ===
По умолчанию ведение логов отключено для модуля '''z/OS Java'''. Чтобы включить ведение логов, добавьте один из следующих параметров в аргумент '''JVM''':
По умолчанию ведение логов отключено для модуля '''z/OS Java'''. Чтобы включить ведение логов, добавьте один из следующих параметров в аргумент '''JVM''':
{| class="wikitable"
{| class="wikitable"
Строка 3150: Строка 3150:
# Запустите сервер приложений или промежуточное программное обеспечение.
# Запустите сервер приложений или промежуточное программное обеспечение.


=== Проверка установки ===
== Проверка установки ==
Чтобы проверить установку, проверьте, отображаются ли хосты '''z/OS''' в списке отслеживаемых хостов.
Чтобы проверить установку, проверьте, отображаются ли хосты '''z/OS''' в списке отслеживаемых хостов.



Текущая версия на 07:36, 8 июля 2025

Установка модуля zRemote

Модуль zRemote обрабатывает данные мониторинга, полученные от zLocal, и направляет эти данные, сжатые и зашифрованные, через свой локальный АктивныйШлюз в Ключ-АСТРОМ. Таким образом, модуль zRemote выгружает большую часть работы по обработке из модулей кода CICS, IMS и z/OS Java, выполняемой в подсистемах и приложениях инструментирования, в открытую систему.

Вы можете настроить модуль zRemote, чтобы включить дополнительные функции, такие как группы хостов и выборку операторов SQL Db2 .

Требования к оборудованию

Требования к оборудованию машины, на которой работает модуль zRemote, зависят от ожидаемого количества транзакций CICS и IMS, которые необходимо отслеживать в секунду. См. требования к оборудованию для машин с архитектурой x86-64 и s390 (ниже).

  • Для сред разработки CICS и IMS: машина небольшого или среднего размера.
  • Для производственных сред CICS и IMS: большая или очень большая машина.
  • Для сред z/OS Java: машина небольшого или среднего размера.
Требования к оборудованию Маленький (DEV) Средний (DEV) Большой (PROD) Очень большой (PROD)
Ожидаемое количество отслеживаемых транзакций CICS/IMS в секунду 4000 7500 15000 30000
Требуемые ядра ЦП на архитектуре x86-64 (серия Xeon E5-2600) 2 4 8 16
Требуемые процессоры IFL на архитектуре s390 1 1 1 2
Требуемая память 4ГБ 6ГБ 8ГБ 16 ГБ
Необходимое дисковое пространство 20ГБ 20ГБ 20ГБ 20ГБ
  • Требования к оборудованию указаны для случая, когда модуль zRemote и его АктивныйШлюз используются только для мониторинга мэйнфрейма.
  • К одному zRemote можно подключить несколько подсистем zDC , если количество отслеживаемых транзакций соответствует требованиям к оборудованию.

Системные требования

Мы рекомендуем установить модуль zRemote на мэйнфрейм IBM Z или LinuxONE, на поддерживаемой операционной системе Linux для s390. Применяются следующие системные требования:

  • Подсистема zDC и модуль zRemote, к которому она подключается, должны располагаться в одном центре обработки данных, чтобы избежать проблем с производительностью и безопасностью.
    • zRemote запишет предупреждение в свои логи после задержки соединения в 3 секунды.
    • zRemote разорвет соединение после задержки соединения в 10 секунд.
  • zRemote поддерживает только установку АктивногоШлюза на основе хоста, настроенную для одной среды.
  • Мониторинг хоста, на котором запущен zRemote с ЕдинымАгентом, поддерживается только в режиме мониторинга полного стека.

Поддерживаемые операционные системы

Вы можете установить модуль zRemote в любой из перечисленных ниже операционных систем Linux и Windows.

Дистрибутив Версии Архитектура ЦП
Oracle Linux 8.10, 9.5 ARM64 (AArch64), x86-64
Red Hat Enterprise Linux 8.8, 8.10, 9.2, 9.4, 9.5 s390, x86-64
Red Hat Enterprise Linux 8.10, 9.4, 9.5 ARM64 (AArch64)
Rocky Linux 8.10, 9.5 ARM64 (AArch64), x86-64
SUSE Enterprise Linux 15.6 ARM64 (AArch64), s390, x86-64
Ubuntu 16.04, 18.04, 20.04, 22.04, 24.04 x86-64
Ubuntu 20.04, 22.04, 24.04 ARM64 (AArch64), s390
Windows 10, 11 x86-64
Windows Server 2016, 2019, 2022, 2025 x86-64

Обзор установщика

Обзор описывает ключевые компоненты приложения zRemote, конфигурацию zRemote и их установочные директории по умолчанию. Непостоянные директории заменяются во время обновлений и удаления.

Директории приложений и установок zRemote

Linux - /opt/Astromkey/zremote

Windows - C:/Program Files/Astromkey/zremote

Все следующие директории не сохраняются в случае обновления или удаления zRemote. Если вы внесете изменения здесь, они будут перезаписаны или удалены.

Директория Компонент Описание
agent/lib64 noneagentz Двоичный файл zRemote
agent/lib64 oneagentzwatchdog Двоичный файл, который обеспечивает возможности сервиса zRemote и управляет ограничениями ресурсов.
agent/lib64 oneagentdumpproc Двоичный файл, поддерживающий создание дампов при сбое основного приложения.
agent/lib64/zos-s390-64/<version> dtzagent Двоичный файл, развернутый в UNIX-части мэйнфрейма для поддержки коммуникаций OneAget. Для получения более подробной информации см. Установка подсистемы zDC
agent/lib64/zos-s390-64/<version> libdtzagent.so Двоичный файл, развернутый в UNIX-части мэйнфрейма для поддержки агентских коммуникаций. Для получения более подробной информации см. Установка подсистемы zDC
agent/conf ruxitagent.conf Файл конфигурации zRemote по умолчанию
agent/conf oneagentzwatchdog.ini Файл конфигурации сторожевого таймера по умолчанию
agent/conf .pem Сертификаты приложений
agent installer.version Установочная версия двоичного файла zRemote, которая обычно совпадает с версией zRemote
agent zremote только для Linux Скрипт сервиса для запуска приложения zRemote
uninstallation.sh только для Linux Скрипт службы для удаления приложения zRemote.

Он удаляет все, кроме постоянной конфигурации пользователя и файлов журналов.

Конфигурация и директории установки zRemote

Linux - /var/lib/Astromkey/zremote

Windows - C:/Program Files/Astromkey/zremote

Все следующие директории не сохраняются в случае обновления или удаления zRemote. Если вы внесете изменения здесь, они будут перезаписаны или удалены.

Директория Компонент Описание
agent runtime Содержит сведения о подключении, указанные в вашей среде Ключ-АСТРОМ.
config instance.properties Содержит идентификатор текущего зарегистрированного экземпляра.
config version.properties Содержит полный номер версии модуля zRemote.
state Содержит адрес последнего успешного подключения к серверу для указания правильно установленного соединения.

Следующие директории сохраняются в случае обновления или удаления. Вы можете внести изменения здесь. Для получения более подробной информации см. раздел Настройка модуля zRemote (ниже).

Директория Компонент Описание
agent/conf zremoteagentuserconfig.conf Файл конфигурации для настройки модуля zRemote
agent/conf watchdoguserconfig.conf Файл конфигурации для настройки watchdog таймера

Установка

Модуль zRemote загружается и устанавливается автоматически во время процедуры установки АктивногоШлюза в Linux или Windows.

  1. Войдите в Ключ-АСТРОМ. Выберите АктивныйШлюз > Настроить.
  2. На странице Установка среды АктивногоШлюза выберите Linux или Windows.
  3. только для Linux Выберите тип установщика s390 (рекомендуется) или x86/64.
  4. Выберите цель Установить модуль zRemote для мониторинга z/OS , загрузите установщик и запустите процедуру установки.
  5. необязательный Настройте выбор порта. По умолчанию модуль zRemote проверяет порт 8898 на предмет подключений от zLocal, работающего как часть zDC. Чтобы проверить другой порт, задайте параметру zdclistenerport ваш порт в файле zremoteagentuserconfig.conf. Убедитесь, что этот порт не заблокирован брандмауэром.

Подробную информацию о параметрах установки по умолчанию см. в разделе Параметры установки АктивногоШлюза по умолчанию для Linux или Windows.

Подробную информацию о настройке установки см. в разделе Настройка установки АктивногоШлюза в Linux или Windows.

Ведение логов

Логи zRemote создаются на машине, где установлен модуль zRemote, в директориях по умолчанию для Linux и Windows. Вы можете просматривать логи zRemote либо непосредственно на машине, на которой размещен zRemote, либо запросив их из Ключ-АСТРОМ через рабочий процесс диагностики ЕдиногоАгента.

Фактический лог zRemote должен содержать следующие сообщения:

  • Регистрация сообщений, отправляемых всеми модулями кода CICS/IMS и zDC.
  • Регистрация сообщений, отправляемых из zLocal.

Обновление и обслуживание

Чтобы оставаться в курсе событий, вы можете автоматически обновить модуль zRemote до более новой версии, используя процедуру автоматического обновления АктивногоШлюза.

Чтобы вручную обновить модуль zRemote

Для Linux

Для выполнения этих команд вам потребуются права root.

Чтобы запросить текущий статус модуля zRemote:

service zremote status

Чтобы остановить, запустить или перезапустить модуль zRemote:

service zremote stop|start|restart|forcestop

Разница между stop и forcestop заключается в том, что команда stop позволяет выполнить процедуру контролируемого завершения работы, а команда forcestop принудительно завершает работу процесса.

Для Windows

Для выполнения этих команд вам потребуются права администратора.

В Windows модуль zRemote можно обслуживать с помощью вкладки Службы диспетчера задач Windows. Вы также можете использовать следующую команду:

sc stop|start|restart "Astromkey zRemote"

Команда sc асинхронная, поэтому вам необходимо запросить состояние службы, чтобы определить, когда она полностью остановилась:

sc query "Astromkey zRemote"

Настройка модуля zRemote

Вы можете настроить модуль zRemote, чтобы включить дополнительные функции и оптимизировать его производительность.

Файлы конфигурации пользователя

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

Для применения новых настроек необходимо перезапустить службу zRemote.

Конфигурация пользователя модуля zRemote

Файл конфигурации пользователя модуля zRemote (zremoteagentuserconfig.conf) позволяет переопределить конфигурацию по умолчанию, определенную в ruxitagent.conf.

Для Linux

/var/lib/Astromkey/zremote/agent/conf/zremoteagentuserconfig.conf

Для Windows

C:/ProgramData/Astromkey/zremote/agent/conf/zremoteagentuserconfig.conf

Конфигурация пользователя Watchdog

Ключ-АСТРОМ версии 1.277+

Файл конфигурации пользователя watchdog (watchdoguserconfig.conf) позволяет переопределить конфигурацию по умолчанию, определенную в oneagentzwatchdog.ini.

Для Linux

/var/lib/Astromkey/zremote/agent/conf/watchdoguserconfig.conf

Для Windows

C:/ProgramData/Astromkey/zremote/agent/conf/watchdoguserconfig.conf

Доступные параметры для настройки:

Параметр Единица измерения Значение по умолчанию Описание
-healthcheck.heartbeat.timeout Секунды 900 Время ожидания соединения между службой zRemote и вашей средой Ключ-АСТРОМ
-healthcheck.memory.limit_absolute МБ 500 Абсолютный ввод для лимита вычислений памяти дочернего процесса
-healthcheck.memory.limit_percentage % 20 Процентный ввод для лимита вычисления памяти дочернего процесса

Расчет эффективного лимита памяти

Эффективный лимит = процентный лимит × доступная физическая память в системе + абсолютный лимит

Например:

0,2 × 5 ГБ + 500 МБ = 1,5 ГБ эффективного лимита памяти

Организация LPAR по группам хостов

Группы хостов полезны, когда вы хотите организовать несколько LPAR, подключенных к одному модулю zRemote. LPAR можно назначить группе хостов, установив атрибут [HostGroup] в файле zremoteagentuserconfig.conf. LPAR может принадлежать только одной группе хостов.

Чтобы назначить LPAR группе хостов, укажите имя группы между парой атрибутов [HostGroup]. Пара атрибутов [HostGroup] может находиться в любом месте файла zremoteagentuserconfig.conf.

[HostGroup]

<LPAR_Name1>=<HostGroupName>

<LPAR_Name2>=<HostGroupName>

[HostGroup]

Имя LPAR — это 8-символьное имя логического раздела, определенное LPARNAME() в параметре IEASYMxx member в z/OS.

Имя LPAR также отображается в разделе на экране хоста Properties and tags.

К строке <HostGroupName> предъявляются следующие требования :

  • Может содержать только буквенно-цифровые символы, дефисы (-), подчеркивания (_) и точки (.)
  • Не должно начинаться с dt.
  • Максимальная длина — 100 символов.

Объединение трех LPAR в одну группу хостов

В этом примере мы добавляем три LPARLPARA, LPARB, и LPARC в одну группу хостов TEST_HOST.

[HostGroup]

LPARA=TEST_HOST

LPARB=TEST_HOST

LPARC=TEST_HOST

[HostGroup]

Назначение трех LPAR разным группам хостов

В этом примере мы назначаем каждый LPAR отдельной группе хостов.

[HostGroup]

LPARA=TEST_HOST

LPARB=PROD_HOST

LPARC=PERF_HOST

[HostGroup]

  • В настройках хоста для группы хостов z/OS применимы только меню Общие , Мониторинг и Обнаруженные процессы.
  • Сохраняйте настройки группы хостов только в файле zremoteagentuserconfig.conf и переносите настройки группы хостов из файла ruxitagent.conf.
  • Настройки группы хостов вступают в силу во время запуска zRemote. После определения группы хостов в файле необходимо перезапустить модуль zRemote zremoteagentuserconfig.conf.

Извлечение полных SQL-выражений из баз данных Db2

Ключ-АСТРОМ может предоставить информацию об операторах SQL на основе трассировки вызовов баз данных Db2 и DL/I. Эти операторы SQL отображаются в Ключ-АСТРОМ, например, как:

  • FETCH (PROGNAME;165;3)
  • CLOSE (PROGNAME;441;2)

Строка представляет собой имя программы (имя DBRM), номер строки и номер раздела.

Модуль zRemote версии 1.241+ Ключ-АСТРОМ может обеспечить более глубокое понимание вызовов базы данных Db2, извлекая полные операторы SQL из директории Db2. При включенной функции извлечения операторов SQL операторы SQL отображаются в Ключ-АСТРОМ, например, как:

  • FETCH (GETTAB INTO : H , : H , : H , : H , : H)
  • CLOSE (GETTAB)

Включение выборки SQL-выражений

Функция выборки SQL-выражений по умолчанию отключена. Чтобы включить ее

1. Установите и настройте IBM Data Server Driver для программного обеспечения ODBC и CLI на Linux или Windows .

Дополнительные материалы: Информация о загрузке и установке драйвера IBM Db2 ODBC CLI.

На этапе установки обратите внимание на расположение библиотеки драйвера CLI:

  • libdb2.so для Linux
  • db2app64.dll для Windows

Перед настройкой драйвера может потребоваться обратиться к администратору базы данных с запросом информации о подключении к базе данных (такой как учетные данные базы данных, местоположение, IP и порт). На этапе настройки обратите внимание на псевдонимы Db2 (или DSN).

Оба эти условия потребуются на следующих этапах.

  • Модуль zRemote поддерживает только 64-битный драйвер CLI.
  • Мы настоятельно рекомендуем вам установить тайм-аут соединения для каждого BD, например, ConnectTimeout=2 на две секунды в db2cli.ini на Linux.
  • Обязательно протестируйте конфигурацию драйвера CLI, чтобы обеспечить хорошее соединение с DB2, например:
\<cli-driver-path\>/bin/db2cli validate -connect -database \<db-location\>:\<ip\>:\<port\> -user \<id\> -passwd \<pw\>

\<cli-driver-path\>/bin/db2cli validate -connect -dsn \<db-alias\>

  • Для настройки драйвера CLI вам потребуются учетные данные Db2, которые предоставляют доступ к соединениям Db2 (из распределенных с использованием DDF/DRDA) и права выбора в CATALOG, в частности в SYSPACKSTMT.

2. В файле модуля zRemote zremoteagentuserconfig.conf определите библиотеку драйвера CLI и группу псевдонимов Db2 (аналогично определению групп хостов), например:

# Linux

cli_driver_lib=/opt/IBM/CLIDRIVER/lib/libdb2.so

# ... or Windows

cli_driver_lib=C:/IBM/CLIDRIVER/bin/db2app64.dll

[DbAlias]

dbHost1.dbName1=alias1

dbHost2.dbName2=alias2

dbHostN.dbNameN=aliasN

[DbAlias]

# Beginning with zRemote 1.279 it is possible to set the new flag sqlStmtExtended, if

# true the full (fetched) SQL statement is appended with its old (unfetched) format,

# for example, from an example above "FETCH (GETTAB INTO : H , : H , : H , : H , : H)"

# would be shown as "FETCH (GETTAB INTO : H , : H , : H , : H , : H) (PROGNAME;165;3)".

# The default is false. Note: if enabled this setting would affect the aggregation count.

sqlStmtExtended=false

где dbHost— идентификатор SMF z/OS, а dbName— имя подсистемы Db2. Все регистрозависимо.

3. необязательно Определите sqlStmtCacheFileName=/tmp/sqlStmtCacheFileName, например, для кэширования извлеченных SQL-выражений в файл и использования его при перезапуске модуля zRemote, тем самым уменьшая взаимодействие с Db2. Обязательно используйте соответствующее полное имя файла.

4. Перезапустите модуль zRemote.

  • Модуль zRemote включит функцию выборки SQL-операторов только в том случае, если драйвер CLI может быть успешно загружен и определен хотя бы один псевдоним DB2.
  • Если впоследствии выяснится, что псевдоним Db2 недействителен, функция будет отключена.

Включение безопасного соединение zLocal-zRemote

Модуль zRemote версии 1.267+

По умолчанию zLocal и zRemote используют фирменный протокол связи через простые сокеты. Вы можете настроить их для связи через TLS, настроив AT-TLS для zLocal и установив флаги SSL для zRemote, как показано ниже.

Конфигурация AT-TLS для zLocal

В зависимости от ваших требований существуют различные способы настройки AT-TLS для zLocal. Более подробную информацию см. в разделе Application Transparent Transport Layer Security data protection в документации IBM. Вы можете использовать пример конфигурации AT-TLS ниже в качестве шаблона.

Пример конфигурации AT-TLS
TTLSRule                       <client-rule>

{

    RemoteAddr                 <ALL | specific-ip-addr>

    RemotePortRange            <zdclistenerport>

    Direction                  Outbound

    TTLSGroupActionRef         <group-action>

    TTLSEnvironmentActionRef   <environment-action>

    TTLSConnectionActionRef    <connection-action>

}

TTLSGroupAction                <group-action>

{

    TTLSEnabled                On

   Trace                       <trace-level>

}

TTLSEnvironmentAction          <environment-action>

{

    HandshakeRole              Client

    TTLSKeyringParmsRef        <keyring-parms>

    TTLSCipherParmsRef         <cipher-parms>

}

TTLSKeyringParms               <keyring-parms>

{

#   A certificate matches that of the zRemote's certificate

#   must be loaded into RACF and connected to the Keyring here.

    Keyring                    <pub-key-or-certificate>

}

TTLSCipherParms                <cipher-parms>

{

    ...

    V3CipherSuites             TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

    V3CipherSuites             TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384

    V3CipherSuites             TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

    V3CipherSuites             TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

    ...

}

TTLSConnectionAction           <connection-action>

{

    TTLSConnectionAdvancedParmsRef  <connection-advanced-parms>

}

TTLSConnectionAdvancedParms    <connection-advanced-parms>

{

    SSLv2                      Off

    SSLv3                      Off

    TLSv1                      Off

    TLSv1.1                    Off

    TLSv1.2                    On

    TLSv1.3                    On

}

Убедитесь, что userId, используемый в zDC, совпадает с тем, который в сертификате. В противном случае подключение к TSL не будет выполнено (с ошибкой SSL accept -1 и кодом 5).

Настройки SSL/TLS для zRemote

Чтобы включить SSL/TLS для zRemote

  1. Откройте файл zremoteagentuserconfig.conf.
  2. Установите sslEnabled на true.
  3. Укажите абсолютные пути к файлам PEM вашего закрытого ключа (sslPrivateKey) и сертификата (sslCertificate).
  4. необязательный Определите конкретные наборы шифров TLS. Для получения информации о разрешенных именах наборов шифров и их строковом формате обратитесь к документации OpenSSL.
Шаблон конфигурации
# Must be true to enable secure connection; all other SSL settings are ignored if false

sslEnabled=true

# Absolute paths to your private key (with the pass-phrase stripped) and certificate PEM files.

# Beginning with zRemote module version 1.301.0, multiple private-key/certificate pairs delimited

# by a semicolon can be specified. For example:

# sslPrivateKey=<private-key-1.pem; private-key-2.pem; ...; private-key-n.pem>

# sslCertificate=<certificate-1.pem; certificate-2.pem; ...; certificate-n.pem>

sslPrivateKey=<private-key.pem>

sslCertificate=<certificate.pem>

# Optional: TLS cipher suites allowed according to OpenSSL

# Example: sslCiphers=ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384

sslCiphers=<cipher-suites>

Игнорирование недействительных попыток подключения

Если определенный процесс регулярно пингует модуль zRemote, чтобы определить его доступность, и эти пинги достигают порта zRemote, модуль zRemote регистрирует недопустимую попытку подключения. Эти недопустимые попытки подключения со временем увеличивают размер логов zRemote.

Чтобы игнорировать попытки подключения от определенных процессов, перечислите их IP-адреса (через точку с запятой) в файле, например zremoteagentuserconfig.conf:

ignoreHandshakeEndpoints=192.168.0.1;10.0.0.2

Отказ от нового расчета идентификатора процесса IMS MPR

Модуль zRemote версии 1.253+

Идентификаторы процессов области обработки сообщений IMS (MPR) могут измениться, что приведет к появлению новых процессов и объектов служб в Ключ-АСТРОМ. Чтобы предотвратить изменение идентификатора процесса, мы ввели более стабильный расчет идентификатора, в результате чего все процессы и объекты служб IMS MPR изменятся один раз, и затем останутся стабильными после обновления модуля zRemote до версии 1.253.

Чтобы отказаться от расчета нового идентификатора процесса IMS MPR, установите флаг useOldImsPgiCalc в файле zremoteagentuserconfig.conf на true.

useOldImsPgiCalc=true

Установка z/OSMF workflow

Фреймворк z/OSMFIBM z/OS Management Facility — повышает производительность труда программистов систем z/OS за счет использования упрощенных, оптимизированных и автоматизированных рабочих процессов.

Вы можете установить Ключ-АСТРОМ Мониторинг на z/OS с помощью настраимовой установки z/OSMF workflow для модулей zDC, CICS и IMS, а затем использовать z/OSMF для поддержки Ключ-АСТРОМ Мониторинг.

Предустановка

  • z/OS версии 2.5+ с активным z/OSMF
  • zRemote версии 1.287+ установлен и подключен к вашей среде Ключ-АСТРОМ
  • zlocal версия 1.1+ установлен и подключен к zRemote

Загрузка файла

Файл определения z/OSMF workflow автоматически развертывается в вашей среде USS при загрузке zLocal. Убедитесь, что zRemote содержит файл определения z/OSMF workflow. Либо вы можете вручную скопировать его в USS.

Чтобы найти файл определения z/OSMF workflow, перейдите в следующую директорию zRemote:

Linux - /opt/Astromkey/zremote/agent/lib64/zos-installer/AstromkeyInstallWorkflow.xml

Windows - C:/Program Files/Astromkey/zremote/agent/lib64/zos-installer/AstromkeyInstallWorkflow.xml

Установка файла

Чтобы установить файл определения z/OSMF workflow

  1. Откройте Workflows и выберите Actions > Create Workflow.
  2. Укажите путь к файлу определения workflow и нажмите Далее.
  3. Определите идентификатор пользователя-владельца и систему, затем нажмите Готово.

Файл определения успешно загружен, когда в списке workflow отобразится workflow Установка Ключ-АСТРОМ Мониторинг.

Запуск workflow

Подготовка установки z/OSMF workflow

  1. Выберите workflow Установка Ключ-АСТРОМ Мониторинг и активируйте интересующие вас шаги.
  2. Чтобы добавить исполнителей для всех активированных шагов, выберите Действия > Назначение и владение > Добавить исполнителей.
  3. Добавьте доступных исполнителей и нажмите ОК.
  4. Выберите Действия > Принять для назначенных вам шагов.

Установка workflow Ключ-АСТРОМ Мониторинг теперь готова. Следуйте шагам workflow, пока установка Ключ-АСТРОМ Мониторинг не будет завершена.

Загрузка датасетов продуктов z/OS

Вы можете загрузить файл PAX, содержащий модули CICS, IMS, z/OS Java и zDC двумя способами:

  • Ключ-АСТРОМ версии 1.272+ Загрузка через API развертывания.
  • Ключ-АСТРОМ версии 1.276+ Загрузка через веб-интерфейс.
Начиная с версии ЕдиногоАгента 1.275, файл PAX больше не будет публиковаться на нашем FTP-сервере.

Загрузка PAX-файла

Вы можете загрузить последнюю или конкретную версию файла PAX через веб-интерфейс или API развертывания ЕдиногоАгента.

Версия файла PAX должна быть меньше или равна версии модуля zRemote.

Загрузите последнюю версию через веб-интерфейс

  1. В меню Ключ-АСТРОМ перейдите в раздел Развертывание и выберите Начать установку.
  2. Выберите z/OS и загрузите наборы данных продуктов z/OS, чтобы загрузить последнюю версию файла PAX.

Имя файла Astromkey-zos-1.nnn.m.pax включает основную nnn и m второстепенную версии релиза.

Загрузите определенную версию через веб-интерфейс

Вы можете загрузить определенную версию файла PAX через веб-интерфейс следующим образом:

  1. Перейдите в Настройки > Мониторинг > Обзор мониторинга.
  2. Выберите Скачать установщик ЕдиногоАгента или АктивногоШлюза и укажите предпочтительную версию:
    1. Установщик: ЕдиныйАгент - z/OS
    2. Сборка: выберите предпочтительную основную версию
    3. Ревизия: выберите предпочтительную второстепенную версию Image2001.png
  3. Выберите Продолжить и Загрузить наборы данных продуктов z/OS, чтобы загрузить определенную вами версию файла PAX. Имя файла Astromkey-zos-1.nnn.m.paxвключает основную nnn и m второстепенную версии релиза.

Загрузите последнюю версию через API развертывания

Вы можете загрузить последнюю версию файла PAX через API развертывания следующим образом:

  1. Сгенерируйте токен доступа с помощью интеграции PaaS - загрузка установщика (InstallerDownload).
  2. Загрузите последнюю версию файла PAX через API развертывания — Загрузите последнюю версию ЕдиногоАгента :
HTPP-метод Среда Ключ-АСТРОМ Конечная точка
GET SaaS https://{your-environment-id}.live.Astromkey.com/api/v1/deployment/installer/agent/zos/mainframe/latest
GET Managed https://{your-domain}/e/{your-environment-id}/api/v1/deployment/installer/agent/zos/mainframe/latest

Ниже приведен пример curl команды для среды SaaS, которая использует API развертывания для загрузки последней версии файла PAX:

curl -X GET "https://<environment>.live.Astromkey.com/api/v1/deployment/installer/agent/zos/mainframe/latest" -H "accept: */*" -H "Authorization: Api-Token <accessToken>" --output Astromkey-zos.pax

Замените <environment> на идентификатор вашей среды Ключ-АСТРОМ и сгенерированный вами токен доступа <accessToken>.

Загрузите определенную версию через API развертывания

Вы можете загрузить определенную версию файла PAX через API развертывания следующим образом:

1. Сгенерируйте токен доступа с помощью интеграции PaaS - загрузка установщика (InstallerDownload).

2. Список всех доступных версий PAX-файлов через API развертывания — список доступных версий ЕдиногоАгента.

HTPP-метод Среда Ключ-АСТРОМ Конечная точка
GET SaaS https://{your-environment-id}.live.Astromkey.com/api/v1/deployment/installer/agent/versions/zos/mainframe
GET Managed https://{your-domain}/e/{your-environment-id}/api/v1/deployment/installer/agent/versions/zos/mainframe

Ниже приведен пример curl команды для среды SaaS, которая использует API развертывания для вывода списка всех доступных версий файла PAX:

curl -X GET "https://<environment>.live.Astromkey.com/api/v1/deployment/installer/agent/versions/zos/mainframe" -H "accept: */*" -H "Authorization: Api-Token <accessToken>"

Замените <environment> на идентификатор вашей среды Ключ-АСТРОМ и сгенерированный вами токен доступа <accessToken>.

3. Загрузите определенную версию файла PAX через API развертывания — загрузите ЕдиныйАгент определенной версии :

HTPP-метод Среда Ключ-АСТРОМ Конечная точка
GET SaaS https://{your-environment-id}.live.Astromkey.com/api/v1/deployment/installer/agent/zos/mainframe/version/{version}
GET Managed https://{your-domain}/e/{your-environment-id}/api/v1/deployment/installer/agent/zos/mainframe/version/{version}

Ниже приведен пример curl команды для среды SaaS, которая использует API развертывания для загрузки определенной версии файла PAX:

curl -X GET "https://<environment>.live.Astromkey.com/api/v1/deployment/installer/agent/zos/mainframe/version/<version>" -H "accept: */*" -H "Authorization: Api-Token <accessToken>" --output Astromkey-zos.pax

Замените <environment> на идентификатор вашей среды Ключ-АСТРОМ, <version> на выбранную вами версию файла PAX и сгенерированный вами токен доступа <accessToken>.

Извлечение датасетов продукта

Вы можете извлечь наборы данных о продуктах из файла PAX следующим образом:

  1. Перенесите файл PAX в z/OS USS в двоичном режиме.
  2. Переименуйте файл PAX из Astromkey-zos-1.nnn.m.pax в Astromkey-zos.pax.
  3. Используйте EXTRACT ниже для извлечения датасетов продукта из установочных файлов. Перед запуском задания измените следующее:
    1. Определите желаемый высокоуровневый квалификатор для имен датасетов установки и задайте переменную HLQ соответствующим образом.
    2. Установите путь к директории z/OS USS MYUSS, куда вы поместили файл Astromkey-zos.pax. Если путь к директории превышает 42 символа, это может привести к ошибке в работе STEP3. В таком случае вам необходимо изменить JCL, чтобы учесть символ продолжения.
    3. Измените серийный номер тома VOLSER в соответствии со стандартами сайта.
EXTRACT job
//EXTRACT JOB ('ACCTINFO'),'User name or comment',NOTIFY=&SYSUID,

//             MSGLEVEL=(1,1),CLASS=A,MSGCLASS=X,REGION=0M,

//             COND=(0,NE)

//*

//* !!!!!!!! IMPORTANT !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

//*

//* When upgrading the zDC to version 1.213+ while

//* the CICS code module is enabled, it is important to follow

//* the below steps in the given sequence.

//*

//* 1. Stop the zDC

//* 2. Wait for 15 minutes for the CICS code module to

//*    reset/cleanup the control blocks

//* 3. Upgrade the zDC to newer version

//* 4. Start the zDC

//*

//* !!!!!!!! IMPORTANT !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

//*

//* This job extracts the product installation datasets from

//* the installation files at <MYUSS>/GIMZIP to

//* <hlq>.<rel>.SZDT* libraries.

//*

//* Change the JOB card and the SET statements below to meet             

//* site standards.

//*

//* Verify if the SMPCPATH and SMPJHOME DD below points to the

//* correct PATH to meet site standards.

//*

//* WARNING!

//* This JCL must be in mixed case and sequence numbers are not allowed

//*

// EXPORT SYMLIST=*

// SET HLQ='DT'             <== HLQ of the target PDS datasets

// SET REL='R12770'         <== Release number

// SET VOLSER='NSM001'      <== Volume of the target PDS datasets

// SET MYUSS='/u/dt'        <== USS work directory

//*

//*

//STEP1   EXEC PGM=IKJEFT01,DYNAMNBR=10

//SYSPRINT DD SYSOUT=*

//SYSTSPRT DD SYSOUT=*

//STDOUT   DD SYSOUT=*

//STDERR   DD SYSOUT=*

//SYSIN    DD DUMMY

//SYSTSIN  DD *,SYMBOLS=EXECSYS

BPXBATCH SH rm -Rf &MYUSS/GIMZIP

BPXBATCH SH cd &MYUSS &&  +

         pax -rvf Astromkey-zos.pax GIMZIP

//*

//*

//STEP2    EXEC PGM=GIMUNZIP,PARM='HASH=YES'

//SMPDIR   DD PATH='&MYUSS/GIMZIP/',PATHDISP=KEEP

//SMPCPATH DD PATH='/usr/lpp/smp/classes/',PATHDISP=KEEP

//SMPJHOME DD PATH='/usr/lpp/java/J8.0/',PATHDISP=KEEP

//SMPOUT   DD SYSOUT=*

//SYSPRINT DD SYSOUT=*

//SYSUT3   DD UNIT=SYSALLDA,SPACE=(CYL,(25,5))

//SYSUT4   DD UNIT=SYSALLDA,SPACE=(CYL,(25,5))

//SYSIN    DD *,SYMBOLS=EXECSYS

<GIMUNZIP>

  <ARCHDEF archid="AUTHLIB"

           replace="YES"

           volume="&VOLSER"

           newname="&HLQ..&REL..SZDTAUTH">

  </ARCHDEF>

  <ARCHDEF archid="LOAD"

           replace="YES"

           volume="&VOLSER"

           newname="&HLQ..&REL..SZDTLOAD">

  </ARCHDEF>

  <ARCHDEF archid="SAMPLE"

           replace="YES"

           volume="&VOLSER"

           newname="&HLQ..&REL..SZDTSAMP">

  </ARCHDEF>

</GIMUNZIP>

/*

//*

//STEP3   EXEC PGM=IKJEFT01,DYNAMNBR=10

//SYSPRINT DD SYSOUT=*

//SYSTSPRT DD SYSOUT=*

//STDOUT   DD SYSOUT=*

//STDERR   DD SYSOUT=*

//SYSIN    DD DUMMY

//SYSTSIN  DD *,SYMBOLS=EXECSYS

BPXBATCH SH export ussdir=&MYUSS &&+

            cp ${ussdir}/GIMZIP/Astromkey-oneagent-zos-java.jar +

            ${ussdir}/Astromkey-oneagent-zos-java.jar

//*

//*

//STEP4   EXEC PGM=IKJEFT01,DYNAMNBR=55

//SYSPRINT DD SYSOUT=*

//SYSTSPRT DD SYSOUT=*

//STDOUT   DD SYSOUT=*

//STDERR   DD SYSOUT=*

//SYSIN    DD DUMMY

//SYSTSIN  DD *,SYMBOLS=EXECSYS

BPXBATCH SH rm -Rf &MYUSS/GIMZIP

//

Если работа завершается с кодом возврата 0, извлечение прошло успешно.

необязательный Удалите Astromkey-zos.pax и Astromkey-oneagent-zos-java.jar (если не нужно) и освободите место на диске.

Датасеты продуктов

В процессе извлечения создаются следующие датасеты продуктов (имена указаны для высокоуровневого квалификатора по умолчанию и версии выпуска R1nnnx):

  • DT.R1nnnx.SZDTAUTH: Содержит подсистему zDC и модуль IMS, включая IMS Connect
  • DT.R1nnnx.SZDTLOAD: Содержит модуль CICS
  • DT.R1nnnx.SZDTSAMP: Включает примеры определений JCL и CICS RDO
Использование дискового пространства датасетами продуктов
Dsname                Tracks(3390) %Used

---------------------------------------

DT.R1nnnm.SZDTAUTH      893          5

DT.R1nnnm.SZDTLOAD       61         27

DT.R1nnnm.SZDTSAMP     1221         24

./GIMZIP/                      8K

./Astromkey-zos-1.nnn.m.pax    5M

Определение псевдонимов

Мы рекомендуем определять ALIAS без номера версии для датасетов продукта. Используйте ALIAS в работах по внедрению модулей zDC, CICS и IMS. Затем вы можете выполнять обслуживание без обновления работ.

Например:

DEFINE ALIAS(NAME('DT.DYNTRC.SZDTAUTH') RELATE('DT.R12770.SZDTAUTH'))

DEFINE ALIAS(NAME('DT.DYNTRC.SZDTLOAD') RELATE('DT.R12770.SZDTLOAD'))

Установка подсистемы zDC

Подсистема z/OS Data Collection (zDC) взаимодействует с модулями CICS, IMS и z/OS Java через объект общей памяти (SMO) на LPAR. Подсистема zDC поддерживает этот SMO, и модули записывают в него свои данные мониторинга.

zLocal (libdtzagent.so), размещенный в среде z/OS Unix System Services (USS), работает как часть zDC. Он управляет подключением сокета TCP/IP к модулю zRemote, считывает данные мониторинга из SMO и передает эти данные в zRemote.

Загрузчик (dtzagent), размещенный в среде z/OS USS, работает как часть zDC. Он управляет процессом обновления zLocal.

Когда zDC инициализируется (запуск системы или ручной запуск), он запускает загрузчик, а загрузчик запускает zLocal. Когда zDC завершает работу, zLocal и загрузчик останавливаются.

Безопасность системы

zDC (zLocal) использует соединения сокетов TCP/IP, поэтому может потребоваться обновить правила доступа вашей системы безопасности, если они настроены на запрет доступа по протоколу TCP/IP по умолчанию.

zDC не ограничивает идентификаторы пользователей, которые могут вводить команды оператора.

Вы можете контролировать разрешения, назначаемые файлам, созданным zLocal и загрузчиком, установив DT_UMASK. Значение по умолчанию — umask(022).

Установка

zDC работает как авторизованный процесс z/OS (обычно как системная задача). Это означает, что программы должны находиться в авторизованной библиотеке. Он предназначен для автоматического запуска в качестве запущенной задачи в системной IPL. Это обеспечивает zDC постоянную доступность для сбора данных мониторинга из модулей.

zDC также может быть запущен, как пакетное задание. Класс обслуживания zDC должен быть достаточно высоким, чтобы он всегда был доступен для сообщений keep-alive от zRemote. zDC должен иметь приоритет, равный или превышающий приоритет контролируемых регионов CICS и IMS.

Подсистема zDC должна быть установлена ​​на каждом LPAR, который вы хотите отслеживать.

1. Загрузите наборы данных продуктов z/OS. Запишите высокоуровневый квалификатор, используемый в процедуре загрузки.

2. Создайте идентификатор пользователя RACF для процесса zDC. Этот идентификатор должен иметь сегмент z/OS USS. Рекомендуемое имя домашней директории — /u/dt.

Если задана домашняя директории, отличная от /u/dt, измените путь к загрузчику на шаге 8, которая по умолчанию равна /u/dt/agent/lib64/dtzagent. Имена домашней директории ниже не могут быть изменены.

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

  • Он записывает двоичный файл zLocal в /u/dt/agent/downloads/native/a.b.c.d/zos-s390-64/libdtzagent.so, где a.b.c.d— версия zLocal (т. е. 1.0.1.0).
  • Он записывает логи zDC и zLocal в /u/dt/log/dtxxx.log.

В случае сбоя записи процессы zDC используют директорию /tmp/Astromkey.

Если zDC запускается, как запущенная задача, идентификатор должен соответствовать запущенной задаче zDC и иметь доступ к указанному выше пути USS.

3. Измените высокоуровневый квалификатор датасетов, представленный в элементе <hlq>, COPYAGNT на значение SZDTSAMP, которое вы использовали в процедуре загрузки наборов данных продуктов z/OS.

4. Запустите работу COPYAGNT, чтобы создать необходимые поддиректории z/OS USS в домашней директории запущенной работы zDC.

5. Скопируйте двоичный файл dtzagent и сделайте его исполняемым SZDTSAMP.

Если вы используете домашнюю директорию по умолчанию /u/dt, то результирующий путь будет /u/dt/agent/lib64/dtzagent.

Если используется домашняя директория, отличная от /u/dt, путь в этой работе должен быть изменен соответствующим образом. Имена файлов и директорий чувствительны к регистру. Имена путей ниже домашней директории не могут быть изменены.

Работа COPYAGNT должна выполняться под идентификатором пользователя, который был создан для процесса zDC, так что этот идентификатор пользователя владеет двоичным файлом dtzagent. Если это неудобно, вы также можете использовать команды chown и chgrp для сброса пользователя-владельца и группы для двоичного файла dtzagent после запуска COPYAGNT.

6. Разрешите <hlq>.SZDTAUTH, где <hlq> значение высокоуровневого квалификатора, которое вы использовали в процедуре загрузки датасетов продуктов z/OS.

Например, создайте элемент с именем, SYS1.PARMLIB(PROGDT) содержащим:

APF FORMAT(DYNAMIC)

APF ADD DSNAME(<hlq>.SZDTAUTH) VOLUME(XXXXXX)

Затем введите консольную команду:

SET PROG=DT

7. Скопируйте образец запущенной задачи zDC PROC ZDCMEPC из системной PROCLIB SZDTSAMP, используемой для запущенных задач.

Имя по умолчанию для PROCMEPC. Настройте его по мере необходимости для местных стандартов. Если выбрано другое имя подсистемы, измените параметр SUBSYSTEM_ID() в параметрах SYSIN для соответствия.

//SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN)

SUBSYSTEM_ID(MEPC)

Элементы PROC и JCL SYSIN ZDCSYSIN и ZDCMEPCA, которые они используют, содержат имена датасетов, которые необходимо отредактировать, заменив <hlq>. соответствующими высокоуровневыми квалификаторами.

8. Обновите параметр SYSIN DTAGTCMD(), чтобы он отражал ваши определения.

//SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN)

DTAGTCMD(/u/dt/agent/lib64/dtzagent

nobootstrap=false

zremoteagent=<ipaddress>[:port])

  • /u/dt/agent/lib64/dtzagent задает путь к загрузчику. Имя домашней директории по умолчанию — /u/dt. Если вы задали другую домашнюю директорию на шаге 2, измените ее соответствующим образом.
  • nobootstrap=false позволяет загрузчику автоматически обновлять zLocal, как только становится доступна более новая версия. По умолчанию zLocal получает автоматические обновления. Установите значение на true для отключения автоматических обновлений и вручную обновите zLocal .
  • zremoteagent=<ipaddress>[:port] установите IP-адрес и порт установленного модуля zRemote. IP-адрес обязателен, порт необязателен и по умолчанию равен 8898.

9. Убедитесь, что выход SMF U86 активен.

  • необходимый Вам необходимо использовать z/OS 2.3 или более позднюю версию.
  • необходимый Выход U86 необходим для отчета об использовании LPAR для метрик DPS и выставления счетов. Ключ-АСТРОМ может приостановить трассировку без метрик DPS.
Начиная с версии ЕдиногоАгента 1.315, трассировка будет автоматически приостановлена, если метрика host.zos.msu_hours не будет получена в течение 12 часов подряд.

Когда это происходит, в логах zRemote регистрируется следующее сообщение:

Tracing has been disabled. The LPAR[LPAR] has not sent valid billing metrics.

Отслеживание будет автоматически возобновлено после повторного получения действительных показателей host.zos.msu_hours.

Чтобы проверить активность выхода SMF U86, выполните следующую команду:

D SMF,O

Найдите в выводе команды (EXITS(IEFU86)).

  • Если вы это нашли, выход SMF U86 активен. Переходите к следующему шагу.
  • Если вы его не нашли, вам необходимо добавить его в parmlib SMFPRMxx.
SUBSYS(STC,EXITS(IEFU86)

Затем включите его.

D PROG,EXIT,EN=SYS.IEFU86,DIAG

10. необязательный Добавьте команду в автозагрузку системы для автоматического запуска подсистемы zDC при IPL.

11. Используйте ZDCIVP PROC SZDTSAMP для проверки установки zDC и подключения zRemote.

Хороший тест на подключение zRemote возвращает Connection timeout, так как zRemote не поддерживает протокол FTP. Если существует проблема подключения zRemote, это обозначается EDC8128I Connection refused. Это означает, что zRemote не прослушивает ожидаемый порт.

Проверка установки

После завершения установки проверьте ее правильность.

Убедитесь, что zDC запущен правильно

Убедитесь, что zDC запустил правильную версию, успешно инициализировался и запустил zLocal. Найдите следующие сообщения в zDC SYSPRINT DD.

ZDC000I INITIALIZATION STARTED FOR zDC  VER 1.195.00

ZDC052I zDC IS RUNNING ON Z/OS RELEASE 02.02.00

ZDC053I LPAR NAME IBMSYS1    CVTSNAME S0W1

.

.

.

.

ZDC955L Astromkey connection being processed ZDC-Job/ID:AFVBZ021/Z021

ZDC958L Astromkey INIT completed, ZDC AgentId received ZDC-Job/ID:AFVBZ021/Z021

ZDC993I Opn1RFD:0008  /u/labuser/adcdk/ci/7.2build/log/dt_Z021_Z021_33620108.0.log

ZDC955I Astromkey connection being processed ZDC-Job/ID:AFVBZ021/Z021

Если в логах работы zDC появляется следующее сообщение SUBSYSTEM_ID (имя вашей подсистемы может отличаться от MEPC), перезапустите zDC с другими параметрами SYSIN.

11:55:30.419083 ZDC006E SUBSYSTEM MEPC ALREADY EXISTS AND IS ACTIVE

Убедитесь, что zLocal правильно запущен и подключен к zRemote.

zLocal записывает сообщения логов в zDC SYSPRINT DD в дополнение к среде z/OS USS /u/dt/log. Логи zLocal содержат информацию, касающуюся запуска zLocal, управления версиями и подключения к zRemote.

Чтобы убедиться, что все каналы в zLocal подключены к zRemote, найдите следующие сообщения в SYSPRINT:

info    [native] Astromkey z Remote Agent data channel connected successfully, performing handshake.

info    [native] Astromkey z Remote Agent client handshake performed.

info    [native] Astromkey z Remote Agent data channel handshake successful, version[rr.rr.rr.bbbb].

info    [native] Astromkey z Remote Agent control channel connected successfully, performing handshake

info    [native] Astromkey z Remote Agent handshakes are complete, all channels are fully operational.

Используйте команду z/OS MODIFY ниже, чтобы указать zDC на необходимость отображения статуса zLocal и поиска путей к файлам логов zLocal и zRemote.

MODIFY <zdc-jobname>,DT1 STDO

После того, как файл логов zLocal найден, вы можете получить к нему доступ, используя стандартные методы. Используйте OMVS, ssh/telnet или просмотрите его в веб-интерфейсе Ключ-АСТРОМ, как обычный файл логов ЕдиногоАгента.

Также найдите следующие сообщения в соответствующем файле логов zRemote (значения в скобках должны отражать ваши текущие данные).

info    [native] Astromkey z Local Agent handshakes are complete, all channels are fully operational, version[rr.rr.rr.bbbb].

info    [native] Data client socket listener thread started

info    [native] ASID[48], smfID[S0W1], sysid[Z208], jobName[AF71Z208], subagentid[da57ff16] smfID.JobID[S0W1    .JOB92014], zDC release 65 was successfully initialized with protocol version=6.5.0

info    [native] zDC[Z208] SMO is initialized with size=10M.

info    [native] Registering the zdc[48]

Проверьте уровень обслуживания модуля нагрузки zLocal

Просмотрите библиотеку установки <hlq>.R1nnnxx.SZDTAUTH, где <hlq> находится высокоуровневый квалификатор набора данных продукта, чтобы найти загрузочный модуль для zLocal ZDCDTAGT.

В примере заголовка ниже вы можете увидеть 1.nnn.00, что указывает на то, что это версия загрузочного модуля без какого-либо обслуживания. Когда применяется обслуживание, поле содержит номер подверсии, например 1.nnn.01. Даты меняются со временем.

ZDCDTAGT 00000000 YYYYMMDD HH.MM VER 1.nnn.00 COPYRIGHT (C)...

Загрузочный модуль ZDCDTAGT может выдавать диагностические сообщения в следующем формате:

ZDC99<n><i>

Где n - уровень логов, а i где — приоритет.

Сообщение о недостаточности прав доступа при запуске zDC

Если в логах заданий zDC появляются следующие сообщения (или что-то похожее):

H408I USER(xxxxxxxx) GROUP(xxxx) NAME(STARTED TASK )

BPX.FILEATTR.PROGCTL CL(FACILITY)

INSUFFICIENT ACCESS AUTHORITY

ACCESS INTENT(READ ) ACCESS ALLOWED(NONE )

А соответствующие сообщения появляются в файле логов zLocal:

JJJJ-MM-DD HH:MM:SS  3f8bbe02¨ info  native¨ Server requests us to use Agent

dTMajor.dTMinorVersion.0.dTBuild with a hash of 0317af199c1ab1a03dda2cee90c2ea61

JJJJ-MM-DD HH:MM:SS  3f8bbe02¨ info  native¨ Requesting Agent library from Server

JJJJ-MM-DD HH:MM:SS  3f8bbe02¨ info  native¨ Error setting Agent library program

controlled: EDC5139I Operation not permitted.

JJJJ-MM-DD HH:MM:SS  3f8bbe02¨ info  native¨ Loading Agent

/dt/Astromkey-<dTMajor.dTMinorVersion.0>/agent/downloads/<dTMajor.dTMinorVersion.0.dTBuild>

/native/zos-s390-64/libdtzagent.so

Их можно игнорировать.

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

Набор данных SYSIN

Все значения, которые настраивают выполнение zDC, находятся в датасетах, на который указывает DDNAME SYSIN. Образец запущенной задачи PROC ZDCMEPC ссылается на JCL SYSIN ZDCSYSINSZDTSAMP, как показано ниже:

//SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN)

Датасет должен содержать 80 записей символов, кратных 80 байтам.

При внесении любых изменений в набор данных SYSIN необходимо перезапустить процесс zDC, чтобы изменения вступили в силу.

Параметры SYSIN

Позиции с 1 по 71 каждого оператора могут содержать значения параметров. Позиции с 72 по 80 игнорируются и могут опционально содержать порядковый номер.

Каждый параметр использует формат KEYWORD(value). Каждое ключевое слово и требования к связанным с ним значениям задокументированы в JCL ZDCSYSIN SYSIN SZDTSAMP.

Если значение параметра занимает несколько строк, укажите значение до позиции 71 и продолжите значение в следующем операторе, начиная с позиции 1.

Как добавить комментарий к выражению

Если вы хотите использовать комментарий, укажите это, поставить звездочку в позицию 1 утверждения. Все утверждение считается частью комментария.

/* This is a comment. */

Комментарий можно заключить между косой чертой и звездочкой, и звездочкой и косой чертой.

Параметр (значение по умолчанию) Описание
DTAGTCMD(/u/dt/agent/lib64/dtzagent) Устанавливает путь к загрузчику dtzagent.

Дополнительные параметры:

  • nobootstrap=false позволяет загрузчику автоматически обновлять zLocal, как только становится доступна более новая версия. Установите значение на true для отключения автоматических обновлений.
  • zremoteagent=<ipaddress>[:port] устанавливает IP-адрес и порт установленного модуля zRemote. IP-адрес обязателен, порт необязателен и по умолчанию равен 8898.
  • name=zlocal_<lpar> определяет имя zLocal для файлов логов. Имя должно отражать, что это zLocal. Оно может включать идентификатор SMF обслуживаемого LPAR.
  • loglevel=<value> устанавливает уровень логов zLocal. Значения уровня логов включают FINEST, FINER, FINE, CONFIG, INFO, WARNING, SEVERE, DEBUG, NONE). Значение по умолчанию отсутствует.
SUBSYSTEM_ID(MEPC) Определяет имя подсистемы zDC. Оно должно состоять из четырех непустых символов:
  • Первый символ должен быть заглавной буквой (A:Z).
  • Последние три символа — заглавные буквы или цифры (#,$,@,A:Z,0-9).
DEFAULT(YES) Определяет подсистему zDC, как подсистему по умолчанию. Данные мониторинга собираются подсистемой zDC по умолчанию, которая определяет DEFAULT(YES). Если вы запускаете несколько подсистем zDC на одном LPAR, вам необходимо указать DEFAULT(NO) для каждой дополнительной zDC, в противном случае они не будут инициализированы.
DISPLAY_NAME() Определяет отображаемое имя для этой подсистемы zDC для ее идентификации в определенных сообщениях логов.
DTLOGLEVEL(3) Устанавливает уровень логов zDC. Диапазон значений уровня логов от 0 до 8. Установите значение 4 для подавления информационных сообщений. Значения ниже 3 следует использовать только для диагностической отладки.
DTMSG_SMOSIZE(1) Устанавливает максимальный объем хранилища (МБ) для сообщений, которые могут быть поставлены в очередь в объекте общей памяти zDC при ожидании записи в модули z/OS. Значение по умолчанию 1 МБ должно быть достаточным в большинстве случаев, когда включена буферизация транзакций. Если буферизация транзакций отключена (не рекомендуется), установите размер SMO на 10 МБ, если отслеживаются очень большие объемы транзакций.
DTCHDIR(/u/dt) Изменяет текущую директорию z/OS USS, в котором загрузчик dtzagent создает временные файлы для stdin, stdout, и stderr. По умолчанию используется домашняя директория соответствующего идентификатора пользователя.
DTMSG_TRANBUFSIZE(n,m) Переопределяет количество и размер буферов транзакций по умолчанию. Буферы транзакций обеспечивают лучшую производительность для модулей CICS и IMS, помещая сообщения о событиях, связанные с каждой распределенной трассировкой, в выделенные буферы. Вместо того чтобы отправлять отдельные сообщения о событиях для каждой распределенной трассировки по мере их возникновения, они блокируются в одном или нескольких буферах и отправляются вместе. Кроме того, буфер связанных сообщений обрабатывается zRemote более эффективно.

Параметр n— это количество буферов в тысячах. Например, 2 = 2000 буферов. Нулевое значение отключает буферы транзакций. Параметр m должен быть либо 2 или 4 для указания размера буфера 2 КБ или 4 КБ. Мы рекомендуем размер буфера 4 КБ, если потребление хранилища не является существенной проблемой. Минимальное неотключаемое значение — 1,2. Максимальное — 126,4 или 248,2, что соответствует общему размеру 512 МБ. Верхняя граница количества буферов, которые могут потребоваться, — один для каждой области сообщений IMS и MAXTASK, умноженное на количество областей CICS, но фактические требования, вероятно, будут значительно меньше.

Ведение логов

Уровень логов zDC устанавливается параметром DTLOGLEVEL() в параметрах SYSIN. Вы можете динамически изменять этот уровень логов, выполнив команду z/OS MODIFY.

//SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN)

DTLOGLEVEL(3)

MODIFY <jobName>,DT1 LOG=1

Просмотр выходных сообщений логов в очереди работы zDC. Очередь заданий помогает определить ошибки, которые могут возникнуть во время запуска zDC или при подключении к zRemote. После успешного подключения zDC к zRemote сообщения об ошибках из подсистемы zDC и модулей CICS и IMS направляются в zRemote.

Уровень логов zLocal задается параметром DTAGTCMD(loglevel=INFO) в параметрах SYSIN. Вы можете динамически изменять этот уровень логов, выполнив команду z/OS MODIFY. DTAGTCMD(name=zlocal_<lpar>) определяет имя zLocal для файлов логов. Имя должно отражать, что это zLocal. Оно может включать идентификатор SMF обслуживаемого LPAR.

//SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN)

DTAGTCMD(loglevel=INFO name=zlocal_<lpar>)

MODIFY <jobname>,DT1 ZLALOGLEVEL=FINE

Для zLocal создано два набора логов. Оба они создаются в файловой системе OMVS. Один набор — это временный набор логов, действительный только для текущего выполнения zDC, и местоположение этих логов по умолчанию — домашняя директория идентификатора пользователя zDC. Вы можете переопределить местоположение, используя параметр DTCHDIR() в параметрах SYSIN.

ZLocal также создает стандартный набор логов, один для загрузчика и один для самого zLocal. Эти логи находятся в стандартных местах логов Ключ-АСТРОМ в файловой системе OMVS.

Обновление и обслуживание

  1. Загрузите датасеты продуктов z/OS и извлеките их.
  2. Обновите работу zDC, чтобы оно указывало на новый <hlq>.SZDTAUTH. Если вы определили псевдоним, переопределите его. Например:
DELETE 'DT.DYNTRC.SZDTAUTH' NOSCRATCH

DEFINE ALIAS(NAME('DT.DYNTRC.SZDTAUTH') RELATE('DT.R12710.SZDTAUTH'))

Обновление подсистемы zDC с версии 1.211 или более ранней

Требуется специальная обработка, чтобы избежать аварийных ситуаций в регионах CICS, которые вы отслеживаете при обновлении подсистемы zDC с версии 1.211 или более ранней.

  1. Остановите zDC.
  2. Подождите 15 минут, пока модуль CICS перезагрузится и очистит блоки управления.
  3. Обновите zDC до новой версии.
  4. Запустите zDC.

zLocal

По умолчанию zLocal получает автоматические обновления, если DTAGTCMD(nobootstrap=false) установлено в параметрах SYSIN. При каждом запуске zDC загрузчик запрашивает модуль zRemote на наличие доступных обновлений. Последняя версия zLocal устанавливается как часть установки zRemote. Если доступно обновление, zLocal будет автоматически загружен из zRemote и обновлен.

Примеры сообщений логов в выходных данных задания zDC в случае автоматических обновлений
info    (native) The bootstrap channel connected successfully, requesting version: a.b.c.d

info    (native) Interprocess lock acquired for /u/dt/agent/downloads/native/a.b.c.d/zos-s390-64/libdtzagent.so

info    (native) Fetching agent binary succeeded for /u/dt/agent/downloads/native/a.b.c.d/zos-s390-64/libdtzagent.so

Обновление zLocal вручную

  • Не используйте ручной процесс обновления zLocal при первом подключении к среде Ключ-АСТРОМ, поскольку zDC не запустится успешно.
  • Модуль zRemote должен быть запущен при первом запуске zDC, чтобы избежать U103 аварийного завершения работы пользователем .

Предположим, вы не хотите получать автоматические обновления для zLocal, установленные DTAGTCMD(nobootstrap=true) в параметрах SYSIN. Для ручного процесса обновления двоичный файл zLocal libdtzagent.so должен присутствовать на LPAR в директории /u/dt/agent/lib64.

Чтобы достичь этого:

  1. Запустите загрузчик dtzagent хотя бы один раз в производственном LPAR-разделе или в непроизводственном LPAR-разделе.
  2. Копируйте двоичный файл zLocal в целевой LPAR. В датасете SZDTSAMP участник OCOPYAGT— это работа, которое копирует двоичный файл zLocal libdtzagent.so в директории /u/dt/agent/lib64.
  3. Выполните инструкции по запуску zDC и подключите его к среде Ключ-АСТРОМ.
  4. Если zDC успешно подключается к Ключ-АСТРОМ, libdtzagent.so копируется в директорию /u/dt/agent/downloads/native/a.b.c.d/zos-s390-64/libdtzagent.so, где находится версия zLocal a.b.c.d (т.е. 1.0.1.0)
Примеры сообщений логов в выходных данных работ zDC в случае ручных обновлений
info    (native) Configured to not download module - loading local module

info    (native) Start loading local agent binary

info    (native) Successfully loaded agent binary /u/dt/agent/lib64/libdtzagent.so

Пользователь завершает работу zDC

ZDC может завершиться с пользовательским аварийным завершением из-за внутренних ошибок и сбоев инициализации. Все пользовательские аварийные завершения, за исключением U103 и U106, создают файл дампа. См. список возможных пользовательских аварийных завершений ниже.

Abend Описание
U100 Произошла внутренняя ошибка из-за сбоя инициализации zDC.
U101 Инициализация zDC не удалась, и сообщение об ошибке не отображается.
U102 Хранилище ECSA недоступно для zDC.
U103 Возникла проблема во время операции RETRY из процедуры выхода из режима восстановления.
U104 Задача очереди завершилась ненормально. Это аварийное завершение сопровождается сообщением ZDC066E в SYSLOG.
U105 Задача очереди завершилась аварийно, когда выключение НЕ выполнялось.
U106 Произошла фатальная ошибка в процедуре TCPSP.
U110 Это аварийное завершение может произойти по разным причинам внутренних ошибок. Оно сопровождается одним из следующих сообщений об ошибках zDC в SYSLOG:
  • ZDC988E
  • ZDC987E
  • ZDC985E
  • ZDC984E
  • ZDC983E
  • ZDC982E
  • ZDC981E
  • ZDC988E
  • ZDC982E
  • ZDC981E
  • ZDC979E
  • ZDC978E
U111 Произошла внутренняя ошибка в одном из модулей zDC. Аварийное завершение сопровождается одним из следующих сообщений об ошибке в SYSLOG:
  • AgtSt:DqrIErr-Get Token/Name for FML failed
  • AgtSt:DqrILod LOAD failed
  • AgtSt:Waiting for Que Data Space failed-Abort
U205 zDC не может открыть SYSPRINT или SYSPRIN3 DD для отображения сообщений логов.
U222 Произошла внутренняя ошибка в одном из модулей zDC. Аварийное завершение сопровождается одним из следующих сообщений в SYSLOG:
  • 066E IEAVRLS Error limit!
  • 066E Freed dead TBC Error-Abend222

Настройка подсистемы zDC

Узнайте, как настроить подсистему zDC в зависимости от ваших потребностей.

Команды z/OS MODIFY

Формат команды z/OS MODIFY определяется следующим образом:

MODIFY <jobName or stcProcName>,DT1 <command>

Подсистема zDC поддерживает следующие команды z/OS MODIFY.

Команда Описание
DISPLAY Отображает статистику процессора подзадач Ключ-АСТРОМ.
DTM%V Принудительно отображает (ZDC952) использование очереди сообщений zLocal.
LOG=? Запрашивает уровень логов zDC.
LOG=3 Устанавливает уровень логов zDC. Диапазон значений уровня логов составляет от 0 до 8. Значение по умолчанию — 3. Установите значение 4, чтобы убрать информационные сообщения. Значения ниже 3 следует использовать только для диагностической отладки.
START Запускает zLocal.
STDO Добавляет ранее неотмеченные строки из zLocal stdo.log в SYSPRINT.
STOP Останавливает zLocal.
ZLALOGLEVEL=INFO Устанавливает уровень логов zLocal. Значения уровня логов включают FINEST, FINER, FINE, CONFIG, INFO, WARNING, SEVERE, DEBUG, и NONE. Нет значения по умолчанию.

Команда DISPLAY пропускает большинство строк с нулевыми значениями, если уровень логов равен или превышает уровень по умолчанию 3. Чтобы вывести полный набор значений, необходимо увеличить уровень логов до 1.

MODIFY MEPx,DT1 LOG=1

MODIFY MEPx,DT1 DISPLAY

Пример вывода zDC DISPLAY с помощью LOG=1.

14:13:33.854126 ZDC027I MODIFY COMMAND RECEIVED

14:13:33.857174 ZDC028I DT1 DISPLAY

14:13:33-977432 ZDC994I ShoS Counters

                  35:Msgs sent from MAgent to zDC using unnamed pipe

                   1:QUEUE_MAX_EVENTS(EQH)High watermark elements used

                 128:EQH queue elements defined

                 128:EQH elements currently free

                   0:Internal Performance:XmPosts avoided

                   0:Internal Performance:XmPost Skip DupSrbs

               1,758:zDC Elapsed time (approx sec)

                   0: Bytes read from DTM Msgs

                  49:SMO Msgs written

                  34:Internal:Redundant Post bypassed

                  15:Internal:Attempt Rd=Wr cursor for vStorage Perf.

                  15:z/OS Unix has no ready Msgs, waiting for work

                  48:z/OS Unix Msgs read

               3,808: Bytes read from SMO Msgs

               2,267:TBC Total Transactional Buffers

               2,267:TBC number in Free queue

                  25:TBC Msgs written

                  25:TBC Msgs read

                  10:TBC TBCs written

                  10:TBC TBCs read

                  10:TBC Post bypass

                  41:TBC No Ready Q

               1,905:TBC Bytes written

               1,905:TBC Bytes read

                   2:TBC Age<=PingDelay*.5

                   2:TBC Age<=PingDelay*.75

                   2:TBC Age<=PingDelay*1

                   2:TBC Age<=PingDelay*1.25

                   2:TBC Age>=PingDelay*1.25

          10,485,760:DTMSG_SMOSIZE Bytes allocated

               9,248:DTMSG_SMOSIZE Bytes used

14:13:36-712702 ZDC995W  DispTcb:     009D1438                0.900sec

14:13:36-712792 ZDC995W  DispTcb:     009BBAD0                0.577sec

14:13:36-712832 ZDC995W  DispTcb:     009BBCF0                0.013sec

14:13:36-712882 ZDC995W  DispTcb:     009BBE88                0.012sec

14:13:36-714022 ZDC995W  DispTcb:     009BE170                0.924sec

14:13:36-714062 ZDC995W  DispTcb:     009BE390                0.590sec

14:13:36-714112 ZDC995W  DispTcb:     009BE528                0.251sec

Строк, заканчивающихся восклицательным знаком (!), не должны быть.

Несколько стеков TCP/IP на LPAR

Для LPAR с несколькими стеками TCP/IP требуется дополнительный шаг настройки ZDCMEPC в запущенной задаче PROC из SZDTSAMP.

Программа BPXTCAFF связывает определенный стек TCP/IP с текущим адресным пространством.

Значение PARM— это название работы, которое запускает нужный стек TCP/IP.

//MEPC     PROC

...

//STEP0 EXEC PGM=BPXTCAFF,PARM='TCPIP_stack_name'

//*

//ZDCMAIN EXEC PGM=ZDCMAIN,REGION=0M,PARM='LANGUAGE=EN'

//STEPLIB   DD DISP=SHR,DSN=hlq.SZDTAUTH

//* Notes:

//* SYSPRINT is required in all cases.

//* SYSPRINT must be allocated to spool, not disk, on JES2 systems.

//* SYSPRIN3 is required on JES3 systems only.

//SYSPRINT  DD SYSOUT=*

//SYSPRIN3  DD SYSOUT=*

//SYSIN     DD DISP=SHR,DSN=hlq.SZDTSAMP(ZDCSYSIN)

Несколько пар zDC/zRemote на LPAR

Пара zDC/zRemote соединяет модули на LPAR с одной средой Ключ-АСТРОМ. Например, когда может потребоваться настроить несколько пар zDC/zRemote на LPAR

  • Когда вы хотите поддерживать разные группы приложений в разных средах Ключ-АСТРОМ.
  • Когда вы хотите оптимизировать производительность мониторинга при больших объемах транзакций.

Установите дополнительную пару zDC/zRemote

  1. Установите дополнительный модуль zRemote .
  2. На вашем LPAR скопируйте текущий JCL SYSIN ZDCSYSIN под другим именем (например, ZDCSYSI2).
  3. Отредактируйте новый JCL SYSIN, изменив следующие параметры SYSIN :
    //SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN2)
    DTAGTCMD(zremoteagent=<ipaddress>[:port]
    name=zlocal_<lpar>)
    SUBSYSTEM_ID(<subsystem>)
    DEFAULT(NO)
    • Укажите IP-адрес и порт нового модуля zRemote zremoteagent=<ipaddress>[:port].
    • Измените имя zLocal на новое name=<zlocal_<lpar>>.
    • Измените имя на новое <subsystem>.
    • Измените DEFAULT(YES) на DEFAULT(NO). Первый zDC назначается по умолчанию. Только один zDC на LPAR может указать DEFAULT(YES). Дополнительные zDC не инициализируются, если они не указывают DEFAULT(NO).
  4. Создайте копию текущей запущенной задачи PROC и измените JCL SYSIN так, чтобы он указывал на новый SYSIN.
  5. Запустите новый zDC и проверьте, подключается ли он к новому zRemote.

Подключение модулей к новому zDC

Модуль CICS

Создайте переопределение параметров INITPARM в инициализации системы CICS для нацеливания на новую подсистему zDC.

См. раздел Подключение модуля CICS к подсистеме zDC (ниже).

Модуль IMS

Измените параметр ZDC= в параметрах утилиты внедрения, чтобы указать новую подсистему zDC.

См. Утилита внедрения в области управления IMS (ниже).

Модуль z/OS Java

Измените параметр ZdcName в файле dtconfig.json, чтобы указать новую подсистему zDC.

См. Процедура загрузки модуля z/OS Java (ниже).

Обработка отказоустойчивости для zDC/zRemote

Это не балансировка нагрузки.

Подсистема zDC может автоматически переключаться на следующий активный модуль zRemote в случае возникновения проблемы с основным zRemote.

zLocal версии 1.1.0+ Модуль zRemote версии 1.261+ После того, как происходит отказ и подключается вторичный zRemote, zDC каждые 5 минут проверяет, доступен ли первичный zRemote. Если нет, то вторичное подключение zRemote остается нетронутым, и цикл начинается заново. Если первичный zRemote доступен, то вторичный zRemote отключается, и немедленно предпринимается попытка повторного подключения к первичному zRemote.

zLocal версии старше 1.1.0

После сбоя ZDC остается подключенным к следующему zRemote до тех пор, пока это соединение не будет разорвано. В это время, если исходный zRemote снова в сети, будет предпринята попытка подключения к нему из zDC. Если zDC перезапускается, исходный zRemote будет первоначальной попыткой подключения.

Чтобы использовать это поведение также и для более новых версий zLocal, установите zlaDisablePrimaryReconnect=true в параметр DTAGTCMD SYSIN.

Список адресов zRemote, используемых для обработки отказоустойчивости, поддерживается в JCL SYSIN ZDCSYSIN. Отредактируйте его, изменив следующие параметры SYSIN :

//SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN2)


DTAGTCMD(zremoteagent=<ipaddress>[:port];<ipaddress>[:port];<ipaddress>[:port]

nobootstrap=true)

  • Включите список адресов zRemote zremoteagent=<ipaddress>[:port].
  • Установите отключение автоматических обновлений для zLocal nobootstrap=true; они не поддерживаются во время обработки отказа.

zLocal сообщение об ошибке при попытке обновления во время обработки отказа:

severe  [native] Connection error (connect()/apr_sockaddr_info_get(), EDC9501I The name does not resolve for the supplied parameters.) while trying to bootstrap the zLocal.

Обновление zLocal во время обработки отказа

Для обновления zLocal во время обработки отказа

  1. Отредактируйте JCL SYSIN ZDCSYSIN, изменив следующие параметры SYSIN :
    //SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN2)
    DTAGTCMD(zremoteagent=<ipaddress>[:port]
    nobootstrap=false)
    • Установите основной модуль zRemote zremoteagent=<ipaddress>[:port].
    • Включите автоматическое обновление zLocal nobootstrap=false.
  2. Запустите zDC. Загрузчик dtzagent загрузит последний двоичный файл zLocal libdtzagent.so в директорию /u/dt/agent/downloads/native/a.b.c.d/zos-s390-64.
  3. Скопируйте двоичный файл zLocal libdtzagent.so в директорию /u/dt/agent/lib64. Теперь zDC готов к обработке отказоустойчивости с последним двоичным файлом zLocal.
  4. Отредактируйте JCL SYSIN ZDCSYSIN, изменив следующие параметры SYSIN :
    //SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN2)
    DTAGTCMD(zremoteagent=<ipaddress>[:port];<ipaddress>[:port];<ipaddress>[:port]
    nobootstrap=true)
    • Включите список адресов zRemote zremoteagent=<ipaddress>[:port].
    • Установите отключение автоматических обновлений для zLocal nobootstrap=true.
  5. Перезапустите zDC.

Завершение zDC

zDC обычно освобождает системные ресурсы (особенно общее хранилище), когда он завершается из-за команды выключения или ненормально из-за команды отмены или аварийного завершения программы. Процедуры восстановления (ESTAEX) всегда действуют для перехвата ненормальных завершений и освобождения всех системных ресурсов.

Однако может возникнуть ситуация, когда zDC не может быть завершен из-за проблем или сбоя z/OS, что исключает функционирование команды отмены. Если вы хотите завершить zDC, попробуйте выполнить команды ниже в указанном порядке, пока zDC не завершится. Переходите к шагу 2 только в случае, если команда шага 1 не дала результат, переходите к шагу 3 только в случае, если команда шага 2 не дала результат и т. д.

Чтобы избежать очистки системных ресурсов вручную ZDCDELET, с помощью описанного ниже процесса, подождите немного между командами, чтобы успеть сделать дампы и освободить системные ресурсы.
  1. Выполните команду STOP jobname.
  2. Выполните команду MODIFY jobname,SHUTDOWN IMMED.
  3. Выполните команду CANCEL jobname.
  4. Выполните команду FORCE jobname.

Попробуйте перезапустить zDC. Если перезапуск прошел успешно, вы можете продолжить выполнение этой работы. Если перезапуск не удался и zDC сообщает, что не может продолжать работу, вы можете выполнить аварийную программу очистки zDC с именем ZDCDELET.

ZDCDELET является автономной работой, которая пытается завершить указанную работу zDC и освободить все системные ресурсы, удерживаемые процессом zDC. JCL для выполнения ZDCDELET показан ниже:

//*

//* PLACE YOUR JOB STATEMENT HERE

//*

//DELETE EXEC PGM=ZDCDELET,PARM=xxxx

//STEPLIB DD DISP=SHR,DSN=<hlq>.R1nnnxx.SZDTAUTH


В PARM= операторе EXEC необходимо указать 4-символьное имя подсистемы процесса zDC, который вы хотите завершить.

  • Могут произойти сбои в работе пользователя 100, 101 а сообщения, описывающие сбои, записываются в логи работы.
  • Пользовательское аварийное завершение 100 указывает на то, что длина PARM= не равна ровно 4 байтам.
  • Пользовательское аварийное завершение 101 указывает на то, что имя подсистемы, указанное в PARM=, не найдено в системе.
  • Сообщения ZDC400 , ZDC403 могут быть записаны в логи заданий.

Установка модуля CICS

С помощью модуля CICS вы можете обеспечить наблюдение за транзакциями и программами CICS, включая вызовы IBM MQ и базы данных.

Наблюдаемость для Включая
CICS-транзакции Транзакции, инициированные с использованием
  • Моста IBM MQ и монитора триггера
  • CICS Transaction Gateway, HTTP/S, SOAP через HTTP/S, JSON с использованием конвейера JSON, отличного от Java
  • 3270 терминала
Программы CICS


  • Программы, вызываемые с помощью CICS LINK
  • Подробности транзакций для запросов DPL LINK и START TRANSACTION в распределенной трассировке
База данных вызовов Вызовы баз данных с их SQL-выражениями из CICS в Db2 и IMS DB через метод доступа DL/I
Доступ к файлам Доступ к файлам из CICS через методы доступа VSAM и BDAM.

Отслеживайте транзакции CICS от начала до конца с помощью Ключ-АСТРОМ

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

Image101.png

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

Image102.png

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

Image103.png

Обнаружение аномалий CICS и изоляция доменов неисправностей с помощью Ключ-АСТРОМ

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

Image104.png

Анализируйте сбои с подробностями исключений в контексте транзакций.

Image105.png

Установка

Модуль CICS включает программу PLT, которая инициируется при запуске CICS. Эта программа использует хуки для инструментирования терминала CICS и областей, владеющих приложениями, создавая интересующие события. Она пересылает данные мониторинга в подсистему zDC через общие буферы.

Вам необходимо установить модуль CICS в каждом CICS, который вы хотите отслеживать. Чтобы обновить модуль CICS без перезапуска CICS, см. раздел Обновление модуля CICS без перезапуска (ниже) .

Вам необходимо добавить модуль z/OS Java к каждому шлюзу транзакций CICS, который вы хотите отслеживать.

Поддержка CTS 6.2

Начиная с версии ЕдиногоАгента 1.299, мы обеспечиваем поддержку CTS 6.2, что является серьезным изменением и соответствует последним улучшениям безопасности подсистемы CICS.

Поддержка CTS 6.2 требует, чтобы загрузочный модуль DFHBPZDT, который поставляется в SZDTAUTH, был доступен при запуске CICS. Рекомендуемая процедура установки:

Добавьте строку, похожую на пример ниже, к PROGxx parmlib. Обратите внимание, что SZDTAUTH должен быть авторизован APF.

LPA ADD MODNAME(DFHBPZDT) DSNAME(<hlq>.SZDTAUTH)

Чтобы сразу добавить модуль в LPA, введите консольную команду, аналогичную приведенному ниже примеру.

SETPROG LPA,ADD,MODNAME=DFHBPZDT,DSNAME=<hlq>.SZDTAUTH

В качестве альтернативы можно также добавить DFHBPZDT, STEPLIB в CICS 6.2, где установлен агент Ключ-АСТРОМ. Однако мы не рекомендуем добавлять все SZDTAUTH в CICS STEPLIB.

Для проверки установки CTS 6.2 выводит следующее сообщение:

DFHKE0010  HVPAC449 Vendor table DFHBPZDT for product ID ZDT has been loaded

Определение библиотеки CICS

Вы можете динамически добавить библиотеку загрузки, как определение библиотеки CICS в CSD. Определение CEDA SZDTSAMP находится в member CICRDO. Вы можете найти его в примере в следующем разделе.

Если вы не хотите использовать определение библиотеки CICS, вам необходимо добавить следующий PDS (или его содержимое) в конкатенацию DFHRPL:

// DD DISP=SHR,DSN=<hlq>.SZDTLOAD

Где находится высокоуровневый квалификатор <hlq>, который вы задали во время загрузки наборов данных продуктов z/OS - смотрите выше.

Программы и транзакции Ключ-АСТРОМ CICS

Образцы определений CICS ниже устанавливают программы и транзакцию, которые требуются модулю CICS. Копию этих определений можно найти в SZDTSAMP member CICRDO, который предоставляется для использования RDO с пакетной утилитой DFHCSDUP.

Мы рекомендуем использовать эти названия транзакций и групп, но вы можете изменить их в соответствии с вашими политиками установки. Согласуйте названия группы и имя списка групп с вашим администратором CICS. Замените XYZLIST на названия вашего списка групп (GRPLIST).

Хотя мы рекомендуем использовать идентификатор транзакции по умолчанию DTAX для ZDTPLT, вы также можете использовать пользовательский идентификатор транзакции вместо этого DTAX в своих определениях, если у вас есть конфликтующие определения транзакций.

Пример определения

CEDA DEFINE LIBRARY(DYNATRA) DESCRIPTION(Astromkey LOAD Library)

     GROUP(DTA1) DSNAME01(<hlq>.SZDTLOAD)

CEDA DEFINE TRANSACTION(DTAX) DESCRIPTION(Astromkey CODE MODULE UTILITY TRAN)

     GROUP(DTA1) PROGRAM(ZDTPLT) TASKDATAKEY(CICS) TASKDATALOC(ANY)

CEDA DEFINE PROGRAM(ZDTPLT) DESCRIPTION(Astromkey CODE MODULE UTILITY PROG)

     GROUP(DTA1) DATALOCATION(ANY) EXECKEY(CICS)

CEDA DEFINE PROGRAM(ZDTPLTSD) DESCRIPTION(Astromkey CODE MODULE SHUTDOWN PROG)

     GROUP(DTA1) DATALOCATION(ANY) EXECKEY(CICS)

CEDA DEFINE PROGRAM(ZDTAGT68) DESCRIPTION(Astromkey CTS 5.1 AGENT)

     GROUP(DTA1) CEDF(NO) CONCURRENCY(THREADSAFE) DATALOCATION(ANY)

     LANGUAGE(ASSEMBLER)

CEDA DEFINE PROGRAM(ZDTAGT69) DESCRIPTION(Astromkey CTS 5.2 AGENT)

     GROUP(DTA1) CEDF(NO) CONCURRENCY(THREADSAFE) DATALOCATION(ANY)

     LANGUAGE(ASSEMBLER)

CEDA DEFINE PROGRAM(ZDTAGT70) DESCRIPTION(Astromkey CTS 5.3 AGENT)

     GROUP(DTA1) CEDF(NO) CONCURRENCY(THREADSAFE) DATALOCATION(ANY)

     LANGUAGE(ASSEMBLER)

CEDA DEFINE PROGRAM(ZDTAGT71) DESCRIPTION(Astromkey CTS 5.4 AGENT)

     GROUP(DTA1) CEDF(NO) CONCURRENCY(THREADSAFE) DATALOCATION(ANY)

     LANGUAGE(ASSEMBLER)

CEDA DEFINE PROGRAM(ZDTAGT72) DESCRIPTION(Astromkey CTS 5.5 AGENT)

     GROUP(DTA1) CEDF(NO) CONCURRENCY(THREADSAFE) DATALOCATION(ANY)

     LANGUAGE(ASSEMBLER)

CEDA DEFINE PROGRAM(ZDTAGT73) DESCRIPTION(Astromkey CTS 5.6 AGENT)

     GROUP(DTA1) CEDF(NO) CONCURRENCY(THREADSAFE) DATALOCATION(ANY)

     LANGUAGE(ASSEMBLER)

CEDA DEFINE PROGRAM(ZDTAGT74) DESCRIPTION(Astromkey CTS 6.1 AGENT)

     GROUP(DTA1) CEDF(NO) CONCURRENCY(THREADSAFE) DATALOCATION(ANY)

     LANGUAGE(ASSEMBLER)

CEDA DEFINE PROGRAM(ZDTSOAPH) DESCRIPTION(Astromkey SOAP HEADER PROG)

     GROUP(DTA1) EXECKEY(USER) CONCURRENCY(THREADSAFE)

     DATALOCATION(ANY) LANGUAGE(ASSEMBLER)

CEDA DEFINE PROGRAM(ZDTDC2) DESCRIPTION(COBOL2 PRIMER PROGRAM)

     GROUP(DTA1) EXECKEY(CICS) CONCURRENCY(THREADSAFE)

     DATALOCATION(ANY) LANGUAGE(COBOL)

CEDA DEFINE PROGRAM(ZDTDC2A) DESCRIPTION(COBOL2 PRIMER PROGRAM)

     GROUP(DTA1) EXECKEY(CICS) CONCURRENCY(THREADSAFE)

     DATALOCATION(ANY) LANGUAGE(COBOL)

CEDA DEFINE TDQueue(ZDTQ) DESCRIPTION(Astromkey FOR DTAX Messages)

     GROUP(DTA1) TYPE(Extra) DAtabuffers(001) DDname(ZDTQ)

     Opentime(Deferred) Erroroption(Ignore) TYPEFile(Output)

     RecordSize(00136) BlockSize(00140) RECORDFormat(Variable)

     BLOCKFormat(Unblocked) DIsposition(Shr)

CEDA INSTALL GROUP(DTA1)

CEDA ADD GROUP(DTA1) LIST(XYZLIST)

Таблица списка программ запуска CICS

Добавьте программу запуска CICS (ZDTPLT) после записи DFHDELIM в исходном коде PLTPI и соберите таблицу.

Этот шаг необязателен для тестовых установок, поскольку вместо этого можно использовать транзакцию DTAX для включения модуля после инициализации CICS. Мы рекомендуем вам разместить запись ZDTPLT непосредственно перед спецификацией TYPE=FINAL.

Процедуру DFHAUPLE JCL CICSHLQ.SDFHINST(DFHAUPLE) можно использовать для построения таблицы PLTPI.

Пример таблицы PLTPI, содержащей программу запуска CICS

*

* PLT USED TO SUPPORT Astromkey CODE MODULE INITIALIZATION

*

         DFHPLT TYPE=INITIAL,SUFFIX=SI

         DFHPLT TYPE=ENTRY,PROGRAM=DFHDELIM

* Other PLT startup programs here...

         DFHPLT TYPE=ENTRY,PROGRAM=ZDTPLT

         DFHPLT TYPE=FINAL

         END

Пользователи Compuware Xpediter Global Storage Protection

Программа запуска PLT (ZDTPLT) инициализирует рабочую область выхода модуля CICS, которую CICS получает от своего имени. Такие продукты, как Compuware Xpediter/CICS, могут быть настроены на обеспечение строгого контроля доступа к хранилищу и могут аварийно завершить работу ZDTPLT и помешать запуску модуля CICS, если он не исключен из этих элементов управления. Если вы используете функцию глобальной защиты хранилища Xpediter/CICS, добавьте запись monitor exceptions в DD XDDBPINP в JCL региона CICS, чтобы исключить ZDTPLT*. Например:

DBPA 17.02 TRAN=*,PROGRAM=ZDTPLT*,CSECT=*

Таблица со списком программ выключения CICS

Добавьте программу завершения работы CICS (ZDTPLTSD) перед записью DFHDELIM в исходном коде PLTSD и соберите таблицу.

Мы рекомендуем размещать запись ZDTPLTSD сразу после спецификации TYPE=INITIAL.

Процедуру DFHAUPLE JCL CICSHLQ.SDFHINST(DFHAUPLE)можно использовать для построения таблицы PLTSD.

Пример таблицы PLTSD, содержащей программу завершения работы CICS

*

* PLT USED TO SUPPORT Astromkey CODE MODULE SHUTDOWN

*

         DFHPLT TYPE=INITIAL,SUFFIX=SD

         DFHPLT TYPE=ENTRY,PROGRAM=ZDTPLTSD

* Other PLT shutdown programs here...

         DFHPLT TYPE=ENTRY,PROGRAM=DFHDELIM

         DFHPLT TYPE=FINAL

         END

Подключите модуль CICS к подсистеме zDC

Программа запуска PLT (ZDTPLT) автоматически подключается к подсистеме zDC по умолчанию при инициализации региона CICS.

Если запущено несколько подсистем zDC, она подключается к zDC, который указывает DEFAULT(YES), если только параметр INITPARM переопределения в параметрах CICS SYSIN не указывает, что она должна подключаться к zDC с определенным именем:

<option> устанавливает уровень ведения логов для модуля CICS.

Чтобы проверить связь между модулем CICS и подсистемой zDC, отправьте ping-сообщение.

Настройка

Группировка имен CICSPlex

Вы можете сгруппировать регионы CICS, принадлежащие одному и тому же CICSPlex, в одну группу процессов. Для этого

  1. Перейдите в Настройки > Мейнфрейм > Мониторинг транзакций.
  2. Включите групповые регионы CICS, принадлежащие одному CICSPlex .
  3. Добавьте MASPLTWAIT(YES) к параметру LMAS. Он предписывает региону CICS ждать, пока CICSPlex станет доступным, прежде чем продолжить. Если CICSPlex недоступен, модуль не может его рассмотреть.
  4. необязательный По умолчанию таймаут MASINITTIME(10) interal равен 10 минутам. Вы можете настроить его в диапазоне от 5 минут до 59 минут.

Если вы включили группировку имен CICSPlex после того, как регион CICS был запущен, вам необходимо запустить транзакцию DTAX DTAX DISABLE и DTAX ENABLE.

Поддержка веб-сервисов CICS

Модуль CICS может отслеживать веб-службы CICS, вызываемые через запрос SOAP или запрос JSON (non-Java JSON pipeline). Для отслеживания запросов JSON вам понадобится ЕдиныйАгент версии 1.257 или более новый.

Чтобы отследить программы поставщика веб-служб CICS, которые вызываются программами-обработчиками из CICS SOAP или из CICS non-Java JSON, обновите файл конфигурации конвейера поставщика (.xml) ZDTSOAPH, как показано ниже.

Никакой стандартный обработчик терминала, который не поддерживается из коробки, не может быть инструментирован через CICS и IMS SDK. В качестве отправной точки вы можете использовать следующие примеры кода:

  • ADKJSONA — пример ассемблера CICS для начальных путей для запросов JSON в написанном пользователем обработчике приложений.
  • ADKJSONC — пример CICS COBOL начальных путей для запросов JSON в написанном пользователем обработчике приложений.
CICS SOAP-конвейер

DFHPITP это программа-обработчик приложений, используемая в конфигурации конвейера CICS SOAP, которая вызывает программы поставщика услуг. В дополнение к конвейеру DFHPITP, модуль кода CICS также поддерживает написанные пользователем терминальные программы.

Обновите файл конфигурации конвейера ZDTSOAPH, включив его в строфу <headerprogram> под элементом обработчика SOAP. Обратите внимание, что все конвейеры SOAP имеют элемент обработчика SOAP <cics_soap_1.1_handler> или <cics_soap_1.2_handler> где добавлен ZDTSOAPH. Ниже приведен пример конвейера поставщика CICS SOAP, обновленного с помощью ZDTSOAPH.

Для отслеживания исходящих запросов SOAP, которые возникают в транзакциях CICS, отслеживаемых модулем CICS, добавьте строфу <headerprogram> в определения конвейера запроса службы тех служб SOAP, которые должны отслеживаться. Исходящие запросы SOAP, которые происходят в транзакциях CICS, которые не отслеживаются, игнорируются. Однако отслеживание не ограничивается запросами от программ SOAP, которые действуют как поставщики услуг CICS SOAP.

<?xml version="1.0" encoding="EBCDIC-CP-US"?>

  <provider_pipeline

    xmlns="http://www.ibm.com/software/htp/cics/pipeline"

    xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance"

    xsi:schemaLocation="http://www.ibm.com/software/htp/

       cics/pipeline/provider.xsd ">

    <service>

      <terminal_handler>

        <cics_soap_1.1_handler>

         <headerprogram>

           <program_name>ZDTSOAPH</program_name>

           <namespace>*</namespace>

           <localname>*</localname>

           <mandatory>true</mandatory>

         </headerprogram>

        </cics_soap_1.1_handler>

      </terminal_handler>

    </service>

   <apphandler>DFHPITP</apphandler>

  </provider_pipeline>

ЕдиныйАгент версии 1.257+ CICS non-Java JSON конвейер

DFHPIJT— это программа-обработчик терминала, используемая в конвейере CICS non-Java JSON, которая вызывает программы поставщика услуг. Чтобы отследить поставщика веб-услуг CICS, вызванного через конвейер non-Java JSON, обновите файл конфигурации конвейера, включив ZDTSOAPH в строфу <handler> под тегами xml <default_http_transport_handler_list>. Ниже приведен пример конвейера поставщика CICS non-Java JSON, обновленного с помощью ZDTSOAPH.

<?xml version="1.0" encoding="EBCDIC-CP-US"?>

<provider_pipeline xmlns="http://www.ibm.com/software/htp/cics/pipeline">

  <transport>

    <default_http_transport_handler_list>

      <handler>

       <program>ZDTSOAPH</program><handler_parameter_list/>

      </handler>

    </default_http_transport_handler_list>

  </transport>

  <service>

    <terminal_handler>

      <handler>

        <program>DFHPIJT</program><handler_parameter_list/>

      </handler>

    </terminal_handler>

  </service>

</provider_pipeline>

Маршрутизация сообщений DTAX с использованием TDQueue

Для дополнительной маршрутизации сообщений DTAX в Ключ-АСТРОМ TDQueue (очередь переходных данных) используйте определение ресурса ZDTQ, предоставленное выше в вашем элементе CICRDO.

По умолчанию очередь остается закрытой через атрибут OPENTIME(DEFERRED). Вы должны вручную открыть ее с помощью команды CEMT INQUIRE|SET TDQUEUE. Чтобы очередь по умолчанию открывалась во время установки, используйте атрибут OPENTIME(INITIAL).

Ведение логов

Управлять уровнем логов модуля CICS можно либо с помощью транзакции DTAX, либо указав необязательный параметр INITPARM при запуске региона CICS.

INITPARM=(ZDTPLT='MEPC,<Option>'),


<Option> устанавливает уровень ведения логов для модуля CICS. Принимаемые значения:

  1. FINE | F для точного ведения логов. Мы рекомендуем включать его только в случае возникновения проблем с запуском модуля CICS.
  2. INFO | I для регистрации информации. Это значение по умолчанию.
  3. WARNING | W для регистрации предупреждающих сообщений.
  4. SEVERE | S для ведения логов важных сообщений.
Example:

INITPARM=(ZDTPLT='MEPC,SEVERE'),

Существует два различных набора логов CICS:

  • Один набор сообщений возникает, когда транзакция DTAX выдает команды DISABLE и ENABLE. Эти сообщения записываются в очередь данных CICS CSMT Transient Data Queue (обычно записывается в MSGUSR). Просмотрите эти сообщения в очереди работ CICS. DTAX также записывает набор сообщений в оператор CEEOUT SYSOUT, когда возникают ошибки в соединении между zDC и транзакцией DTAX. Просмотрите эти сообщения в очереди заданий CICS. Пока транзакция DTAX может подключиться к zDC, она регистрирует свои сообщения в zRemote.
  • Модуль CICS, отслеживающий активность транзакций, направляет свои сообщения логов в zDC, а затем в zRemote. Лог показывает, были ли повреждены распределенные трассировки, тайм-ауты или другие ошибки. В этих логах вы также можете увидеть некоторую статистическую информацию.

Доступ к логам CICS можно получить через логи zRemote.

Обновление без перезагрузки региона

Чтобы обновить модуль CICS до более новой версии без перезапуска региона

  1. Загрузите наборы данных продуктов z/OS и извлеките их .
  2. Отключите транзакцию DTAX в регионе CICS с помощью команды DISABLE.
  3. Скопируйте модули CICS из набора данных SZDTLOAD в набор данных Ключ-АСТРОМ DFHRPL, определенный для вашего региона CICS.
  4. Используйте команду CICS CEMT I PROG(ZDT*) для отображения модулей CICS. Используйте команду SET PROG(ZDT*) NEWCOPY, чтобы сообщить CICS, что будет использоваться новая версия каждой программы.
  5. Введите команду CICS CEDA INSTALL GROUP(DTA1), чтобы установить новый модуль в регион CICS.
  6. Включите транзакцию DTAX с помощью команды ENABLE. Убедитесь, что новая версия модуля CICS отображается на панели DTAX.

Установить модуль IMS

С помощью модуля IMS вы можете получить возможность наблюдения за вашими транзакциями и программами IMS, включая вызовы IBM MQ и базы данных.

Наблюзаемость для Включая
Транзакции
  • IMS
  • Fast Path
  • BMP
Транзакции, инициированные с использованием
  • Мост IBM MQ и монитор триггера
  • Адаптер ресурсов IMS TM, шлюз IMS SOAP и IMS Connect
  • 3270 терминал
База данных вызовов Вызовы баз данных с их SQL-выражениями из IMS в Db2 и IMS DB через
  • методы доступа DL/I
  • методыы доступа Fast Path

Установка

Модуль IMS собирает данные о различных событиях обработки транзакций IMS и пересылает данные мониторинга в подсистему zDC через общие буферы.

Вам необходимо установить модуль IMS в Control Region каждой системы IMS DB/DC и DCCTL, которую вы хотите контролировать. Этого достаточно, чтобы охватить все регионы обработки сообщений, связанные с Control Region. Установка модуля IMS в систему только DBCTL не поддерживается

Вам необходимо добавить выход Ключ-АСТРОМ к каждому IMS Connect, который вы хотите отслеживать.

Вам необходимо добавить модуль z/OS Java к каждому шлюзу IMS SOAP, который вы хотите отслеживать.

Перезапуск IMS

Необходимо повторно выполнить работу по внедрению после каждого перезапуска IMS.

IMS-подключение

Добавьте авторизованный набор данных Ключ-АСТРОМ <hlq>.SZDTAUTH в работу IMS Connect STEPLIB, чтобы разрешить IMS Connect загружать выход Ключ-АСТРОМ HWSTECL0.

  • Если вы используете расширения IMS Connect, добавьте SZDTAUTH после библиотеки расширений IMS Connect.
  • Если вы используете локально разработанный выход HWSTECL0, добавьте SZDTAUTH перед набором данных, содержащим локальный выход.

Выход IMS Connect может быть включен для создания узлов PurePath в распределенной трассировке. Активируйте требуемую функцию ЕдиногоАгента z/OS IMS Connect.

  • Если выход IMS Connect настроен на создание узлов PurePath, выход будет подключаться к имени подсистемы zDC по умолчанию. Имя целевой подсистемы zDC можно переопределить, указав следующий параметр DDNAME и ключевое слово в JCL запуска IMS Connect:
//ZDTPARMS DD *

ZDCID=<zDC_Id>

Выход IMS Connect необходим для поддержки протокола API IMS Connect и поддержки шлюза IMS SOAP в случаях, когда шлюз SOAP не настроен для вставки идентификатора отслеживания с помощью команды отслеживания iogmgmt.

Регион управления IMS

Чтобы установить модуль IMS в регион управления, авторизуйтесь <hlq>.SZDTAUTH, добавив его в список APF, а затем запустите работу ZDTINST из PDS <hlq>.SZDTSAMP.

Подробную информацию о параметрах можно также найти в элементе PDS ZDTINST.

Пример JCL с позиционными параметрами:

//S1       EXEC PGM=ZDTIINST,PARM='<IMS_Id>,<zDC_Id>'

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

Пример JCL с параметрами ключевых слов:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=<IMS_Id>

ZDC=<zDC_Id>

Утилита внедрения (ZDTIINST) поддерживает изменение размера таблиц pathid без необходимости перезапуска IMS и повторного внедрения модуля. Размер таблицы путей можно изменить, используя код действия M со спецификацией сегмента таблицы путей в качестве шестого параметра и, опционально, целевой IMSID в качестве седьмого параметра.

Ниже приведен полный список и описание позиционных параметров утилиты внедрения. Все параметры должны быть в верхнем регистре:

// ...    PARM='<IMS_Id>,<zDC_Id>,<ActionCode>|<PathTableSize>,

                <WaitZdcMin>,<Y|N>,<PathTableSegm>,<PathTableIms>'

Параметры утилиты внедрения могут быть указаны, как позиционные или ключевые параметры. Существует семь позиционных параметров. Ключевые параметры должны быть указаны в файле SYSIN. Позиционные параметры в операторе EXEC JCL по-прежнему действительны, однако любые новые параметры, добавленные в будущем, будут добавлены только как ключевые значения SYSIN. Если найдено значение параметра EXEC PARM, параметры SYSIN не будут учитываться. Рекомендуемый метод — использовать файл SYSIN и ключевые параметры.

Символ Позиция Ключевое слово Описание Необходимость
<IMS_Id> 1 IMSID= Четырехсимвольный IMSID региона управления.

Этот параметр не нужен, если вы используете функцию сборки мусора для освобождения хранилища ECSA, содержащего больше не используемые модули IMS.

необходимый
<zDC_Id> 2 ZDC= Четырехсимвольный zDCID, используемый в параметре SUBSYSTEM_ID() целевого zDC.

Этот параметр не нужен, когда запрошенный целевой zDC является DEFAULT zDC. В этом случае введите звездочку (*) или пропустите параметр.

необходимый
<ActionCode>|<PathTableSize> 3 ACTION= | SIZE= Односимвольный код действия или значение размера таблицы pathid.
Код действия

Коды действий указывают действие, которое должно быть выполнено для ранее введенного модуля IMS. Код действия не применим к первоначальному введению модуля IMS и является взаимоисключающим со значением размера таблицы pathid.

Если указан допустимый код действия, программа внедрения не выполняет повторное внедрение модуля IMS и выполняет указанное действие на уже внедренном модуле. Это означает, что новые версии модулей IMS не будут загружены.

Коды действий:

  • E : Включить (разрешить) внедренный модуль IMS, который ранее был отключен.
  • D : Отключить (выключить) внедренный модуль IMS. Модуль IMS больше не вызывается. Используйте код действия E, чтобы снова включить его.
  • G : Сбор мусора. Если модуль IMS был обновлен и внедрен, хранилище ECSA для старых (неиспользуемых) загрузочных модулей модуля IMS освобождается с помощью этой функции.
  • M : Изменить параметр восстановления внедренного модуля IMS, когда это значение используется вместе с пятым параметром, <Y|N>. В качестве альтернативы измените размер любых ранее выделенных таблиц путей, когда используется вместе с шестым параметром <PathTableSegm>, и, при необходимости, седьмым параметром <PathTableIms>. В качестве альтернативы измените размер любого ранее выделенного Fast Path SMO (Shared Memory Object), когда используется вместе с оператором FPATHSIZE=.
  • F : Освободить все блокировки ресурсов и сбросить указатели таблиц pathid. Этот код действия никогда не следует использовать, если только действие E не потерпело неудачу из-за блокировки ресурса модуля IMS или по указанию службы поддержки Ключ-АСТРОМ.
Значение размера таблицы

Значение размера таблиц pathid используется для первоначального внедрения модуля IMS и является взаимоисключающим с кодами действий. Если модуль IMS уже внедрен, значение размера таблиц игнорируется.

Значение размера таблицы можно выразить как SEGM=nnnn, где nnnn — это четырехзначное число сегментов по 1 мегабайту.

Фактическое количество используемых записей может быть больше, так как хранилище выделяется сверх указанной квоты. Количество записей будет скорректировано в сторону увеличения, чтобы использовать все доступное выделенное хранилище.

Если параметр пропущен при первоначальной инъекции модуля IMS, используется значение по умолчанию в четыре сегмента (4 МБ). Это обеспечивает пространство для 8191 записи (приблизительно 2048 записей на сегмент).

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

Третий параметр не указан

Если третий параметр не задан, программа внедрения внедряет модуль IMS.

Вы также можете использовать эту опцию для обновления модуля IMS. В этом случае существующий размер таблицы останется неизменным.

необязательный
<WaitZdcMin> 4 ZDCWAIT= Время ожидания инициализации целевого zDC в минутах (максимум две цифры).

Значение по умолчанию — 30 минут. Целевой zDC должен быть инициализирован хотя бы один раз с момента последнего системного IPL, прежде чем модуль IMS сможет завершить инициализацию.

необязательный
<Y|N> 5 DUMP= Указывает, должен ли модуль IMS захватывать дамп SVC при запуске восстановления ABEND.

Этот параметр можно указать во время первоначального вействий M или E (параметр номер 3) для включения/выключения захвата дампа во время восстановления для ранее внедренного модуля IMS.

Значение по умолчанию — Y, что означает, что захват дампа включен.

необязательный
<PathTableSegm> 6 SEGM= Значение, изменяющее размер таблиц pathid.

Этот параметр применим только в сочетании с кодом действия M (параметр номер 3). Формат значения — SEGM=nnnn, где nnnn— количество (до 4 цифр) сегментов по 1 мегабайту.

необязательный
<PathTableIms> 7 PATHIMS= Значение (до 4 символов), указывающее IMSID, для которого необходимо изменить размер таблицы pathid.

Этот параметр применим только вместе с кодом действия M (параметр номер 3) и значением <PathTableSegm> (параметр номер 6).

Если указан IMSID, изменяется только размер таблицы pathid для этого IMS.

Если параметр опущен, pathid изменяется только размер таблицы для локального IMS (указанного, как параметр номер 1). Если указана

звездочка (*pathid), изменяется размер таблицы pathid для локального IMS и таблиц, выделенных локально для всех удаленных IMSID.

необязательный
n/a n/a REMOTESEGM= Устанавливает количество сегментов, используемых при выделении таблиц удаленных pathid. Формат значения — REMOTESEGM=nnnn, где nnnn— количество (до 4 цифр) сегментов по 1 мегабайту.

Параметр необязателен, действителен только как параметр SYSIN и игнорируется, если указано ключевое слово. Если не указан ACTION=, используется значение по умолчанию 4 в мегабайтах.

Этот параметр не изменяет размер существующих таблиц remote pathid. Чтобы изменить распределение существующей таблицы remote pathid, необходимо использовать ключевые слова ACTION=M, SEGM=, и PATHIMS=.

необязательный

Пример 1. Внедрение модуля IMS в IMS IB01 для zDC ZDC1.

Используйте значения по умолчанию PathTableSize и подождите до 20 минут, пока ZDC1 инициализируется.

С позиционным параметром:

Обратите внимание, что третий позиционный параметр не указан.

//S1       EXEC PGM=ZDTIINST,PARM='IB01,ZDC1,,20'

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IB01

ZDC=ZDC1

ZDCWAIT=20

Пример 2. Отключите модуль IMS, ранее внедренный в IMSB для zDC ZDC1.

С позиционным параметром:

//S1       EXEC PGM=ZDTIINST,PARM='IMSB,ZDC1,D'

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSB

ZDC=ZDC1

ACTION=D

Пример 3. Включение ранее внедренного, но отключенного модуля IMS в IMSB для zDC ZDC1.

С позиционным параметром:

//S1       EXEC PGM=ZDTIINST,PARM='IMSB,ZDC1,E'

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSB

ZDC=ZDC1

ACTION=E

Пример 4. Внедрение модуля IMS в IMS IMSA для zDC ZDC1.

Укажите, что восстановление ABEND модуля IMS также должно захватывать дамп SVC.

С позиционным параметром:

Примите значения по умолчанию для третьего и четвертого параметров.

//S1       EXEC PGM=ZDTIINST,PARM='IMSA,ZDC1,,,Y'

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

DUMP=Y

Пример 5. Отключите сбор дампа восстановления ABEND модуля IMS для ранее внедренного модуля IMS.

С позиционным параметром:

//S1       EXEC PGM=ZDTIINST,PARM='IMSA,ZDC1,M,,N'

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

ACTION=M

DUMP=N

Пример 6. Изменение размера таблицы путей для локальной IMS.

С позиционным параметром:

//S1       EXEC PGM=ZDTIINST,PARM='IMSA,ZDC1,M,,,SEGM=3'

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

ACTION=M

SEGM=3

Пример 7: Измените размер таблицы путей для IMS IMSB, которая является удаленной IMS, на IMSA.

С позиционным параметром:

//S1       EXEC PGM=ZDTIINST,PARM='IMSA,ZDC1,M,,,SEGM=1,IMSB'

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

ACTION=M

SEGM=1

PATHIMS=IMSB

Пример 8: Внедрить и установить размер таблицы удаленных путей равным 2 мегабайтам.

Используйте параметр REMOTESEGM=2:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

REMOTESEGM=2

Отслеживание транзакций Fast Path

Символ Позиция Ключевое слово Описание Необходимость
n/a n/a FPATH= Указывает, следует ли активировать функцию отслеживания транзакций Fast Path:
  • Y : Вставить и включить хуки Fast Path. Включает хуки, которые вставляются, но отключены.
  • N (по умолчанию): Не вводит хуки Fast Path. Отключает хуки, которые вводятся и включаются.

Действительно только как параметр SYSIN и только для IMS версии 15 или более поздней.

Если параметр пропущен или указан неправильно, никаких действий не предпринимается.

необязательный
n/a n/a FPATHSIZE= Размер Fast Path SMO (Shared Memory Object) для трассировки транзакций Fast Path, в сегментах по 1 МБ. Диапазон 1- 9999. Значение по умолчанию - 4.

Это значение можно использовать при первоначального внедрения модуля IMS или в сочетании с оператором действия изменения (ACTION=M) для изменения размера Fast Path SMO.

Действительно только, как параметр SYSIN и только для IMS версии 15 или более поздней.

необязательный

Символ

Позиция

Ключевое слово

Описание

Необходимый

Пример 9: Внедрение и включение трассировки транзакций Fast Path.

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

FPATH=Y

Пример 10: Отключение трассировки транзакций Fast Path.

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

FPATH=N

Пример 11: Внедрение и включение трассировки транзакций Fast Path и переопределение размера SMO по умолчанию, составляющего 4 мегабайта.

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

FPATH=Y

FPATHSIZE=8

Пример 12: Изменение размера пост-внедрения Fast Path SMO.

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

ACTION=M

FPATHSIZE=2

Отслеживание транзакций BMP

Модуль IMS версии 1.259+

Символ Позиция Ключевое слово Описание Необходимость
n/a n/a BMP= Указывает, следует ли активировать отслеживание транзакций для регионов BMP:
  • Y : Включает отслеживание транзакций для регионов BMP.
  • N (по умолчанию): отключает трассировку транзакций для регионов BMP.

Действительно только, как параметр SYSIN.

Если параметр пропущен или указан неправильно, отслеживание транзакций BMP будет отключено.

необязательный

Заметки о трассировке транзакций BMP

Автоматическое отслеживание для ориентированных на транзакции BMP (входные сообщения из очередей сообщений IMS) будет таким же, как и в настоящее время для регионов MPP/IFP: если входное сообщение отслеживается датчиком контрольной области, будет запущен путь для транзакции в регионе BMP. Автоматическое отслеживание для работы, выполняемой пакетными (не ориентированными на транзакции) BMP, может быть выполнено только в том случае, если входное сообщение поступает через MQGET (см. ограничения ниже). В противном случае поддержка пакетных BMP означает, что агент выполняет службы инициализации для региона BMP (выделяет рабочие области и размещает датчики), но не запускает никаких путей. Как для ориентированных на транзакции, так и для пакетных BMP путь для региона BMP запускается всякий раз, когда приложение выдает MQGET, при условии, что выполняются все следующие условия:

  1. Инструментирование включено для фильтра z/OS IMS MPR MQ в настройках пользовательского интерфейса.
  2. Другой датчик еще не начал путь для региона BMP.
  3. Название очереди MQ для MQGET включается или не исключается в зависимости от его наличия или отсутствия в списке фильтров IMS MQ (Настройки > Мэйнфрейм > Фильтры IBM MQ).

Для ориентированных на транзакции и пакетных BMP можно использовать SDK для инструментария приложения для отправки сообщений о событиях на начальные и конечные пути. Нет возможности ограничить отслеживание определенными именами заданий BMP или PSB или отслеживать пакетную работу, отличную от IMS BMP.

Пример 13: Включение трассировки транзакций BMP.

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

BMP=Y

Пример 14: Отключить трассировку транзакций BMP.

С параметром ключевого слова:

//S1       EXEC PGM=ZDTIINST

//STEPLIB  DD DISP=SHR,DSN=<hlq>.SZDTAUTH

//SYSIN DD *

IMSID=IMSA

ZDC=ZDC1

BMP=N

Заметки о сборе мусора

При обновлении модуля IMS вы можете освободить хранилище ECSA, использовавшееся старой версией модуля IMS.

После запуска задания по внедрению для обновленного модуля IMS необходимо действие IMS Message Region для обновления внутренних блоков управления, чтобы они указывали на новую версию модуля IMS. После этого можно повторно запустить задание по внедрению с кодом действия G, установленным в параметре номер 3. Это помечает старую версию модуля IMS, как кандидата на удаление.

По истечении как минимум 3 часов снова запустите работу по внедрению с кодом действия G, установленным в параметре номер 3. Это освободит хранилище ECSA, содержащее старую версию модуля IMS.

Вы можете повторно запустить задание по внедрению с кодом действия G, установленным в параметре номер 3; никаких отрицательных побочных эффектов при этом не возникает. Но для того, чтобы процесс сборки мусора вернул неиспользуемое хранилище модуля, процесс должен быть вызван как минимум дважды после IPL, с интервалом не менее 3 часов между первым и вторым вызовом.

Заметки о внедрении

Запустите zDC хотя бы один раз после системной IPL перед выполнением работы по внедрению модуля IMS.

Если целевой zDC не был запущен с момента последнего IPL, работа по внедрению ждет его запуска. Время ожидания по умолчанию составляет 30 минут, но может быть установлено параметром <WaitZdcMin>. Если zDC все еще не запущен после этого времени, то внедрение не может быть продолжено, и работа по внедрению ABEND завершается с пользовательским кодом 100.

Если zDC был запущен хотя бы один раз с момента последнего системного IPL, работа по внедрению может быть выполнено, даже если zDC в данный момент не запущена. В этом случае выдаются предупреждающие сообщения о том, что zDC не запущен и сбор данных недоступен, а работа по внедрению завершается с RC=4.

Запустите и полностью инициализируйте систему IMS перед выполнением работы по внедрению модуля IMS. Если вы остановите и запустите систему IMS, работа по внедрению должна быть запущена повторно. Если вы запустите новый регион, зависящий от IMS, или остановите и перезапустите его, никаких действий не требуется.

Когда модуль IMS обновляется в ранее внедренном IMS, повторно выполните работу по внедрению модуля IMS, чтобы забрать обновленные модули загрузки модуля IMS. Не указывайте код действия для работы по внедрению в параметре номер 3. IMS не требует перезапуска после обновления модуля IMS.

Мы рекомендуем вам использовать средство автоматизации, такое как IMS Time-Controlled Operations (TCO), для выполнения работы по внедрению модуля IMS.

Все сообщения о внедрении модуля IMS записываются в логи работ. Вы можете контролировать уровень сообщений, включая определенные DDNAMEs в JCL работы по внедрению. Если DDNAMEs не включены, по умолчанию используется уровень 4 для информационных сообщений. Конкретные DDNAMEs и уровни сообщений следующие:

  • //DTMSGLV0 DD SYSOUT=* Для наилучших сообщений DEBUG уровня 0 и выше
  • //DTMSGLV2 DD SYSOUT=* Для точных сообщений DEBUG уровня 2 и выше
  • //DTMSGLV4 DD SYSOUT=* Для информационных сообщений уровня 4 и выше
  • //DTMSGLV5 DD SYSOUT=* Для сообщений уровня предупреждения 5 и выше

Сбои в работе внедренных систем ABEND обычно приводят к пользовательскому коду 100. В большинстве случаев причину сбоя можно определить по предыдущим диагностическим сообщениям, записанным в SYSPRINT.

В зависимости от параметров вашей системы z/OS дамп причин также может быть записан в логи работ, но дамп не будет записан, если в JCL работе внедрения не включено одно из следующих DDNAME:

//SYSABEND DD SYSOUT=*

//SYSMDUMP DD DSN=DT.IMSAGENT.INJECT.SDUMP,DISP=(OLD,KEEP,KEEP)

Оба образца JCL ZDTINST (утилита внедрения) и ZDTIDIAG (утилита диагностики) содержат последний шаг для выполнения процедуры ZDTZLOGC. Функция шага ZDTZLOGC заключается в копировании выходных данных спула работ в файл логов HFS, чтобы он автоматически включался в архив поддержки. Для этой функции включены новая процедура JCL (ZDTZLOGC), программа REXX (ZDTZLOGR) и программа ассемблера (ZDTZLOGS). Чтобы реализовать ее, выполните следующие действия:

  1. Копировать образец JCL ZDTZLOGC в PDS для включения измененного JCL. В JCL PROC необходимо изменить DSN для имен DD SYSEXEC и SZDTAUTH. //SYSEXEC DD DISP=SHR,DSN=<hlq>.SZDTSAMP<- изменить DSN на местонахождение REXX exec ZDTZLOGR(см. шаг 3) //SZDTAUTH DD DISP=SHR,DSN=<hlq>.SZDTAUTH<- изменить на местонахождение DSN program ZDTZLOGS
  2. Оба образца ZDTINST и ZDTIDIAG содержат оператор JCLLIB, который необходимо изменить, а шаг процедуры ZDTZLOGC должен иметь указанный <ZDC Id>. JCLLIB ORDER=(<hlq>.SZDTSAMP)<- изменить DSN местонахождение ZDTZLOGC процедуры JCL (см. шаг 1) //ZDTZLOGC EXEC ZDTZLOGC,ZDC='<ZDC Id>',COND=(EVEN)<- изменить идентификатор ZDC (например, MEPC или * для zDC по умолчанию)

Ведение логов

Существует два набора логов модуля IMS.

  • Первый набор сообщений IMS поступает из работы по внедрению IMS. Это сообщения, которые возникают во время внедрения модуля в область управления IMS. Эти сообщения появляются только в спуле работ по внедрению модуля IMS.
  • Второй набор сообщений IMS поступает из модуля IMS, поскольку он отслеживает активность IMS. Эти сообщения отправляются в zDC, а затем направляются в zRemote.

Доступ к логам модуля IMS можно получить через логи zRemote.

Обновление без перезагрузки региона

Чтобы обновить модуль IMS до более новой версии без перезапуска региона

  1. Загрузите датасеты продуктов z/OS и извлеките их.
  2. Обновите работу внедрения, чтобы она указывало на новый <hlq>.SZDTAUTH. Если вы определили название, переопределите его. Например:
    DELETE 'DT.DYNTRC.SZDTAUTH' NOSCRATCH
    DEFINE ALIAS(NAME('DT.DYNTRC.SZDTAUTH') RELATE('DT.R12710.SZDTAUTH'))
  3. Запустите работу по внедрению без кода действия, чтобы забрать обновленный модуль IMS.

Установка модуля z/OS Java

С помощью модуля z/OS Java вы можете обеспечить наблюдаемость своих приложений Java, включая IBM MQ и вызовы баз данных.

Наблюдаемость для Включая
WebSphere Application Server

WebSphere Liberty

  • Входящие веб-запросы на WebSphere Application Server и Liberty
  • Исходящие веб-запросы от WebSphere Application Server и Liberty через Apache HttpClient
  • Исходящие запросы CICS Transaction Gateway от WebSphere Application Server и Liberty через клиент CTG
  • Websphere Application Server Специальные метрики Websphere Liberty (PMI и JMX)
  • Метрики управляемой памяти, специфичные для JVM (JMX)
z/OS Connect


  • Входящие веб-запросы на z/OS Connect
  • Исходящие запросы из z/OS Connect через поставщиков услуг CICS, IMS и IBM MQ
  • Специальные метрики z/OS Connect (JMX)
  • Метрики управляемой памяти, специфичные для JVM (JMX)
CICS/IMS transactions Транзакции, инициированные с использованием
  • IBM MQ и JMS
  • Шлюз транзакций CICS SOAP и CICS
  • Шлюз IMS SOAP
Database calls Вызовы баз данных с их SQL-операторами из приложений Java в Db2 через JDBC

Отслеживайте свои Java-приложения от начала до конца с помощью Ключ-АСТРОМ и быстро выявляйте любые аномалии

Анализируйте эффективность ваших транзакций от начала до конца, используя поток обслуживания.

Image106.png

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

Image107.png

Быстро обнаруживайте аномалии с помощью точек быстрого реагирования службы.

Image108.png

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

Image109.png

Оцените работоспособность и производительность вашей JVM с развернутыми на ней приложениями.

Получите представление о вашей JVM с помощью метрик управляемой памяти Ключ-АСТРОМ:

Image110.png

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

Image111.png

Какие метрики JMX и PMI предоставляет Ключ-АСТРОМ «из коробки»?

Метрики, специфичные для JVM:

Группа метрик Метрика Источник
JVM memory Общее количество активаций сбора мусора JMX
JVM memory Общее время сбора мусора JMX
JVM memory pool Количество чобранного мусора JMX
JVM memory pool Время сбора мусора JMX
JVM memory pool Максимальное количество байт пула памяти кучи JMX
JVM memory pool Выделенные байты пула памяти кучи JMX
JVM memory pool Использованные байты пула памяти кучи JMX
JVM memory runtime Максимальный объем памяти во время выполнения JMX
JVM memory runtime Общая память во время выполнения JMX
JVM memory runtime Свободная память во время выполнения JMX
JVM threads Количество count JMX
JVM classes Общее количество загруженных классов JMX
JVM classes Количество загруженных классов JMX
JVM classes Количество выгруженных классов JMX

Показатели WebSphere Liberty и z/OS Connect:

Группа метрик Метрика Описание метрики Источник
JDBC connection pool Используемые соединения Количество используемых подключений. Это число может включать несколько подключений, которые совместно используются из одного управляемого подключения. JMX
JDBC connection pool Свободное подключения Количество управляемых соединений в свободном пуле. JMX
JDBC connection pool Управляемые соединения Общее количество управляемых подключений в свободных, общих и неразделяемых пулах. JMX
JDBC connection pool Время использования Среднее время использования соединения в миллисекундах. JMX
JDBC connection pool Время ожидания Среднее время ожидания в миллисекундах до предоставления соединения, если соединение в данный момент недоступно. JMX
Thread pool Размер пула Среднее количество потоков в пуле. JMX
Thread pool Активные count Количество активных потоков, обслуживающих запросы. JMX
Servlet Количество запросов Общее количество запросов, обработанных сервлетом. JMX

Конкретные показатели сервера приложений Websphere:

Группа метрик Метрика Описание метрики Источник
JDBC connection pool Размер пула Размер пула соединений. PMI
JDBC connection pool Размер свободного пула Количество управляемых подключений, находящихся в свободном пуле. PMI
JDBC connection pool Одновременные запросы в очереди Количество потоков, которые в данный момент ожидают соединения. PMI
JDBC connection pool Среднее время ожидания Среднее время ожидания в миллисекундах до предоставления соединения, если соединение в данный момент недоступно. PMI
JDBC connection pool Среднее время использования Среднее время использования соединения в миллисекундах. PMI
JDBC connection pool Процент использованния Процент используемого пула. PMI
Thread pool Размер пула Среднее количество потоков в пуле. PMI
Thread pool Активные count Количество одновременно активных потоков. PMI
Servlet Активные сессии Количество локальных сеансов, которые в данный момент кэшируются в памяти с момента включения этой метрики. PMI
Servlet Всего запросов Общее количество запросов, обработанных сервлетом. PMI

Предустановка

Активируйте функцию ЕдиногоАгента Тег 4 — расширение контекста трассировки .

Скачивание

  1. Загрузите датасеты продуктов z/OS и извлеките JAR-файл (Astromkey-oneagent-zos-java.jar).
  2. Перенесите JAR-файл в среду z/OS Unix System Services (USS) в двоичном режиме.
  3. Создайте новый файл с указанным именем dtconfig.json в папке z/OS USS, где находится модуль. Файл dtconfig.json содержит ваш идентификатор среды Ключ-АСТРОМ (Tenant), идентификатор кластера (ClusterID) и имя подсистемы zDC (ZdcName). Например:
{

  "Tenant": "myTenant",

  "ClusterID": myCluster,

  "ZdcName": "DEFAULT"

}

Замените myTenant и myCluster> на значения вашей среды Ключ-АСТРОМ. Чтобы найти эти значения, в Ключ-АСТРОМ выберите ЕдиныйАгент > Загрузить ЕдиныйАгент > z/OS.

Если имя zDC определено как DEFAULT, модуль подключится к идентификатору подсистемы zDC по умолчанию. Чтобы использовать другой zDC, замените DEFAULT на альтернативный идентификатор подсистемы.

Название подсистемы zDC можно найти в параметрах SYSIN вашего JCL SYSIN ZDCSYSIN. Название подсистемы zDC по умолчанию — MEPC.

//SYSIN DD DISP=SHR,DSN=<hlq>.SZDTSAMP(ZDCSYSIN)

SUBSYSTEM_ID(MEPC)

DEFAULT(YES)

Если в параметрах SYSIN установлено значение DEFAULT, вы также можете использовать его в файле YESDEFAULTdtconfig.json

  • Необходимо только добавить модуль в процессы Servant.
  • Мы рекомендуем добавить модуль в качестве первого аргумента JVM.
  • Модуль не должен добавляться в конец командной строки.

Установка

Сервер приложений

Вам необходимо добавить модуль z/OS Java к аргументам JVM каждого сервера приложений, который вы хотите отслеживать.

Сервер приложений WebSphere
  1. Откройте консоль администратора сервера приложений WebSphere и перейдите в раздел Серверы приложений.
  2. Выберите <YOUR_SERVER> > Определение процесса > Servant и выберите Java Virtual Machine.
  3. Скопируйте аргумент JVM из среды Ключ-АСТРОМ и вставьте его в Generic JVM arguments : -javaagent:/PATH_TO/Astromkey-oneagent-zos-java.jar Замените PATH_TO на путь к вашему JAR-файлу.
  4. Сохраните изменения и перезапустите сервер приложений WebSphere.
  • Необходимо только добавить модуль в процессы Servant.
  • Мы рекомендуем добавить модуль в качестве первого аргумента JVM.
  • Модуль не должен добавляться в конец командной строки.
WebSphere Liberty
  1. Создайте файл jvm.options в корневой папке WebSphere Liberty (обычно эта папка также содержит файл server.xml) или отредактируйте существующий файл.
  2. Скопируйте аргумент JVM из среды Ключ-АСТРОМ и вставьте его в файл jvm.options:
    -javaagent:/PATH_TO/Astromkey-oneagent-zos-java.jar
    Замените PATH_TO на путь к вашему JAR-файлу.
  3. Добавьте функцию monitor-1.0 в свой featureManager файл server.xml для сбора дополнительных показателей, таких как пулы соединений или пулы потоков:
    <server>
        <featureManager>
          <feature>monitor-1.0</feature>
        </featureManager>
    </server>
  4. Сохраните изменения и перезапустите WebSphere Liberty.
  • Мы рекомендуем добавить модуль в качестве первого аргумента JVM.
  • Модуль не должен добавляться в конец командной строки.
  • Мы используем имя сервера WebSphere Liberty в качестве имени экземпляра группы процессов по умолчанию. Если вы хотите использовать другое имя экземпляра группы процессов, вы можете переопределить его, добавив следующее системное свойство в командную строку JVM: -Dwlp.server.name=yourServerName. Замените yourServerName на свое индивидуальное имя.
WebSphere Liberty внутри CICS
  1. Создайте файл .jvmprofile в регионе CICS, принадлежащий CICS JVMSERVER, на котором выполняется WebSphere Liberty, или отредактируйте существующий файл.
  2. Скопируйте аргумент JVM из среды Ключ-АСТРОМ и вставьте его в файл .jvmprofile:
    -javaagent:/PATH_TO/Astromkey-oneagent-zos-java.jar
    Замените PATH_TO на путь к вашему JAR-файлу.
  3. Добавьте функцию monitor-1.0 в свой featureManager файл server.xml для сбора дополнительных показателей, таких как пулы соединений или пулы потоков:
    <server>
        <featureManager>
          <feature>monitor-1.0</feature>
        </featureManager>
    </server>
  4. Сохраните изменения и перезапустите WebSphere Liberty.
  • Мониторинг как региона CICS, так и WebSphere Liberty, работающего внутри этого региона CICS, поддерживается только в том случае, если они пресекаются с другой подсистемой zDC. Если они пересекаются с разными подсистемами zDC, по крайней мере один из этих zDC должен быть запущен как нестандартный (см параметры SUBSYSTEM_ID zDC SYSIN).
    • Для модуля CICS имя подсистемы zDC определяется в параметрах CICS SYSIN .
    • Для модуля z/OS Java имя подсистемы zDC определяется в файле dtconfig.json.
  • ЕдиныйАгент версии 1.281+ Ключ-АСТРОМ версии 1.283+ При запуске в регионе CICS имя экземпляра группы процессов будет включать в себя как имя региона CICS, так и имя сервера WebSphere Liberty в формате CICS region (server name).

Промежуточное ПО

Вам необходимо добавить модуль z/OS Java к каждому продукту, который вы хотите отслеживать.

z/OS Connect Enterprise Edition
  1. Добавьте модуль к переменной JVM_OPTIONS STDENV:
    JVM_OPTIONS=-javaagent:/PATH_TO/Astromkey-oneagent-zos-java.jar
    Замените PATH_TO на путь к вашему JAR-файлу.
  2. необязательный Добавьте функцию monitor-1.0 в свой featureManager файл server.xml для сбора дополнительных показателей, таких как пулы соединений или пулы потоков:
    <server>
        <featureManager>
          <feature>monitor-1.0</feature>
        </featureManager>
    </server>
  3. Сохраните изменения и перезапустите z/OS Connect Enterprise Edition.
  4. Для поставщика услуг CICS активируйте функцию ЕдиногоАгента z/OS CICS z/OS Connect.
  5. Для поставщика услуг IMS:
    1. Добавьте модуль IMS в IMS Connect , как описано в разделе Установка модуля IMS.
    2. Активируйте функцию ЕдиногоАгента z/OS IMS z/OS Connect.
  6. Для поставщика услуг MQ дополнительная настройка не требуется.
Шлюз транзакций CICS
  1. Добавьте модуль к CTGENV и к переменной CTGSTART_OPTS:
    -j-javaagent:/PATH_TO/Astromkey-oneagent-zos-java.jar
    Замените PATH_TO на путь к вашему JAR-файлу.
  2. Сохраните изменения и перезапустите CICS Transaction Gateway.
  • Поддерживаются только протоколы EXCI и IPIC.
  • Конфигурация локального режима WAS конфигурации шлюза транзакций CICS не поддерживается.
Шлюз IMS SOAP
  1. Добавьте модуль в качестве опции zDT к параметрам шлюза IMS SOAP:
    zDT="-javaagent:/PATH_TO/Astromkey-oneagent-zos-java.jar"
    Замените PATH_TO на путь к вашему JAR-файлу.
  2. Экспортируйте определенную опцию zDT, чтобы IBM_JAVA_OPTIONS была включена.
    export IBM_JAVA_OPTIONS="$zDT $JAVA_OPTS"
  3. Сохраните изменения и перезапустите шлюз IMS SOAP.

Ведение логов

По умолчанию ведение логов отключено для модуля z/OS Java. Чтобы включить ведение логов, добавьте один из следующих параметров в аргумент JVM:

Опция Значение по умолчанию Описание
log-stdout false Если true, записывает логи в стандартный поток вывода.
log-stderr false Если true, записывает логи в стандартный поток ошибок.
log-file false Если true, записывает логи в файл, используя ротацию файлов (сохраняя файл с индексом 0). Схема именования: Astromkey-oneagent-java.<PID>.<LPAR>.<INDEX>.log.

При необходимости вы можете войти в несколько мест. Например:

-javaagent:/PATH_TO/Astromkey-oneagent-zos-java.jar=log-stdout=true,log-file=true

При необходимости вы можете настроить ведение журнала файлов с помощью следующих параметров:

Опция Значение по умолчанию Описание
log-file-dir <CODEMODULE_FOLDER>/logs По умолчанию файлы логов записываются в папку модуля Java z/OS.

Также можно записывать файлы логов по абсолютному пути (схема: /<PATH_TO>/logs) или по пути относительно рабочей папки процесса (схема: <PATH_TO>/logs).

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

Диагностика ЕдиногоАгента

Ключ-АСТРОМ рекомендует записывать логи в общую папку логов zDC, чтобы они были включены в рабочий процесс диагностики ЕдиногоАгента. Например, если двоичный файл dtzagent находится в среде z/OS USS /u/dt/agent/lib64/dtzagent, папка логов будет /u/dt/log. Обычно общая папка логов zDC уже существует и содержит некоторые логи zDC.

Чтобы включить ведение лог файлов по абсолютному пути, например, в общей папке логов zDC /u/dt/log, укажите аргумент JVM следующим образом:

-javaagent:/PATH_TO/Astromkey-oneagent-zos-java.jar=log-file=true,log-file-dir=/u/dt/log

Если ваш zDC установлен в другом месте, вам необходимо указать абсолютный путь к общей папке логов zDC.

Обновление

Чтобы обновить модуль Java z/OS до более новой версии

  1. Загрузите датасеты продуктов z/OS и перенесите JAR-файл (Astromkey-oneagent-zos-java.jar) в среду z/OS USS в двоичном режиме.
  2. Остановите контролируемый сервер приложений или промежуточное программное обеспечение.
  3. Замените текущий JAR-файл новым JAR-файлом.
  4. Запустите сервер приложений или промежуточное программное обеспечение.

Проверка установки

Чтобы проверить установку, проверьте, отображаются ли хосты z/OS в списке отслеживаемых хостов.

  1. Перейдите в раздел Хосты и отфильтруйте хосты по операционной системе z/OS. Image113.png
  2. Выберите свой хост, чтобы открыть страницу сведений. Image114.png Если подключены модули CICS, IMS или Java, вы увидите их на панели Процессы.
  • Чтобы проверить соединение между модулем CICS и модулем zRemote, отправьте ping-сообщение .
  • Модули IMS не появляются сразу после их внедрения в подсистему IMS.
    • Следующая транзакция, обрабатываемая областью управления, приводит к появлению области управления IMS.
    • Следующая транзакция, обрабатываемая каждым регионом приложения, приводит к появлению этого региона приложения IMS.