Командный сценарий runwithtrace для Linux

Для трассировки MQ Explorer закройте и перезапустите MQ Explorer с помощью командного сценария runwithtrace. В этом разделе приведена копия сценария для систем Linux®.

Скопируйте и вставьте следующий сценарий в текстовый файл с именем runwithtrace.cmd и запустите сценарий в соответствии с инструкциями из описания шага 3 в разделе "Применение трассировки IBM® MQ Explorer в других средах Eclipse".


#!/bin/sh
#---------------------------------------------------------------------------
# Имя файла: runwithtrace
#
# Описание файла: этот сценарий применяется в случае установки модулей MQ
# Explorer в другом экземпляре Eclipse или продукта на основе Eclipse. 
# Он запускает eclipse, а затем включает трассировку при запуске WebSphere MQ Explorer.
# 
#---------------------------------------------------------------------------

# ---------------------------------------------------------------------------
# Специальная обработка для включения трассировки
#  1.  Пользователь может указать собственный файл свойств с помощью
#      переменной среды MQPROPERTIES
#  2. В противном случае создается файл свойств в /tmp, который записывает
#     данные трассировки в каталог /var/mqm/trace (если он доступен для
#     записи) или в каталог /tmp
# ---------------------------------------------------------------------------

# Проверка, что переменная задана и указанный файл существует
if [ -z "$MQPROPERTIES" -o ! -f "$MQPROPERTIES" ]
then
   # Создание файла свойств с параметрами трассировки по умолчанию
   MQPROPERTIES=/tmp/mq_trace.properties
   # -----------------------------------------------------
   # Выбор расположения для сохранения данных трассировки - сначала проверяется каталог trace
   # -----------------------------------------------------
   echo "Confirming write access to the MQ trace directory /var/mqm/trace"
   MQTRACE=/var/mqm/trace
   # Проверка, что каталог существует и доступен для записи
   if [ -d $MQTRACE -a -w $MQTRACE ]
   then
     echo "Trace will be written to the MQ trace directory /var/mqm/trace"
   else
     echo "Trace will be written to the temporary directory /tmp"
     MQTRACE=/tmp
   fi
 
   # -------------------------------------------------------------
   # Компоновка файла свойств по умолчанию
   # -------------------------------------------------------------
   echo Diagnostics.MQ=enabled  > $MQPROPERTIES
   echo Diagnostics.Java=all >> $MQPROPERTIES
   echo Diagnostics.Java.Trace.Detail=high >> $MQPROPERTIES
   echo Diagnostics.Java.Trace.Destination.File=enabled >> $MQPROPERTIES
   echo Diagnostics.Java.Trace.Destination.Console=disabled >> $MQPROPERTIES
   echo Diagnostics.Java.Trace.Destination.Pathname=$MQTRACE >> $MQPROPERTIES
   echo Diagnostics.Java.FFDC.Destination.Pathname=$MQTRACE >> $MQPROPERTIES
   echo Diagnostics.Java.Errors.Destination.Filename=$MQTRACE >> $MQPROPERTIES
 
fi

# ---------------------------------------------------------------------------
# Создание команды для выполнения
# Поиск в текущем каталоге
# Все параметры сценария передаются команде.
# Параметры weaving времени загрузки указываются в параметре vmargs.
# ---------------------------------------------------------------------------

# Специальный случай, когда модули MQ Explorer установлены в Eclipse
# или продукте на основе Eclipse.
# Среда eclipse должна быть расположена в текущем каталоге. 

if [ -f "eclipse" ]
then
  explorerCmd="./eclipse"
fi
 
if [ ! -f "${explorerCmd}" ]
then
  echo "ERROR - eclipse executable could not be found in the current directory"
  echo "ERROR - This script needs to be run in the same directory as the eclipse executable"
  exit 1
fi

# Примечание.
# В eclipse и продуктах на основе eclipse параметр osgi.framework.extensions
# настраивается в конфигурации модулей Equinox Weaving.
# Таким образом, в отличие от обычного сценария MQ Explorer параметр LTW_OPTIONS будет пустым

# LTW_OPTIONS=-Dosgi.framework.extensions=org.eclipse.equinox.weaving.hook
LTW_OPTIONS=
explorerCmd="$explorerCmd $* -vmargs -Xmx512M $LTW_OPTIONS -Dcom.ibm.mq.commonservices=$MQPROPERTIES"

  
# ---------------------------------------------------------------------------
# Запуск MQ Explorer
# ---------------------------------------------------------------------------
echo Launching $explorerCmd 

exec $explorerCmd