rsugio cpi 001 showVersion - rsugio/cpi GitHub Wiki
rsugio-cpi-001-showVersion - просмотр системного окружения
Когда-то ВУЗовский преподаватель по системному программированию задал мне лабараторную на тему "Анализ системного окружения" для тогдашней MS-DOS. Сама тема показалась мне достаточно простой и тривиальной, но осваивая каждую новую окружающую среду приходится решать эту задачу вновь и вновь.
Итак, вы начали использовать CPI и неплохо бы определить во время выполнения некоторые параметры, опираясь на значения которых вы меняете поведение IFlow. Я считаю значимыми для разработчика следующие параметры:
- Версия JVM
- Версия Groovy
- Версия Apache Camel
- Версия Apache Http Component
Если первые три параметра очевидны, то Apache Http Component неявно "вылазит" при решении практических задач и в зависимостях библиотек. Вы практически никак не можете использовать код, требующий более свежих JVM/Groovy/Camel/HttpComponent. Поэтому я их и хочу вытаскивать отдельно и явно.
Далее, программисту в CPI требуется часто знать:
- Время старта IFlow — для дельта-выборок
- Настройки уровня логирования (больной вопрос, требующий отдельного обсуждения, будет скоро) — для аккуратного вывода в журналы
- MessageId / MPL ID — для сквозного мониторинга
- Имя и идентификатор потока — для собственного журналирования, например
- Код тенанта — ну, много причин
Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ⚗Ѵ
Java version: 1.7.0_151
Groovy version: 2.2.1
Camel version: 2.17.4-sap-11
Camel uptime: 10 minutes
IFLMAP node: vsa3429305
com.sap.it.node.tenant.name: d0204
com.sap.it.node.tenant.id: a3e35a512
com.sap.it.node.vmsize: LITE
org.apache.httpcomponents.httpclient: 4.1.3
org.apache.httpcomponents.httpcore: 4.1.4
IFlow name: rsugio-cpi-001-showVersion
CamelExchange pattern: InOut
CamelCreatedTimestamp: 2018-01-26T18:25:27.768Z
SAP_MessageProcessingLogID: AFprcpf0Sk7kwXefOpTsDpf1dqQA //use it for navigation on MPLs. Somewhere it's MessageGuid
CamelExchange id: ID-vsa3429305-57271-1516579823823-670-5
Message.bodySize: 4
Message.attachmentsSize: 0
Message.attachmentWrapperObjects: [:]
MPLactive: true
MPLlevel: INFO