Гость
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD / 9 сообщений из 9, страница 1 из 1
05.09.2016, 14:32
    #39303845
curious_man
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD
Здравствуйте.
Появилась необходимость увидеть все входящие параметры процедуры SYSPROC.DB2LOAD. Есть приложение, написанное на Java, которое загружает данные, используя утилиту DB2 SYSPROC.DB2LOAD.
Каким инструментом я могу увидеть эти параметры?

Я пробовал увидеть параметры, запустив EVENT_MONITOR, однако ни в одной из мониторовских таблиц:
EVMON_STATEMENTS_CONNHEADER
EVMON_STATEMENTS_STMT
EVMON_STATEMENTS_CONTROL
не увидел упоминания даже об утилите LOAD.
...
Рейтинг: 0 / 0
05.09.2016, 15:27
    #39303881
knudsen
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD
curious_man,

DB2LOAD - это утилита, не SQL-ка.
...
Рейтинг: 0 / 0
05.09.2016, 16:17
    #39303920
curious_man
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD
knudsen,

Sorry, описка. Да, утилита.
...
Рейтинг: 0 / 0
06.09.2016, 11:04
    #39304288
knudsen
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD
curious_man,

это я к тому, что в SQL-мониторах будет шиш, а вот что-то типа
Код: sql
1.
select * from "SYSIBMADM"."DB_HISTORY" WHERE CMD_TEXT LIKE '%LOAD%';

можно попробовать.
...
Рейтинг: 0 / 0
06.09.2016, 11:51
    #39304328
curious_man
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD
knudsen,

Спасибо! Нашел все параметры утилиты в этом столбце CMD_TEXT.
...
Рейтинг: 0 / 0
06.09.2016, 12:22
    #39304360
CawaSPb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD
curious_manЗдравствуйте.
Появилась необходимость увидеть все входящие параметры процедуры SYSPROC.DB2LOAD. Есть приложение, написанное на Java, которое загружает данные, используя утилиту DB2 SYSPROC.DB2LOAD.
Каким инструментом я могу увидеть эти параметры?

Я пробовал увидеть параметры, запустив EVENT_MONITOR, однако ни в одной из мониторовских таблиц:
EVMON_STATEMENTS_CONNHEADER
EVMON_STATEMENTS_STMT
EVMON_STATEMENTS_CONTROL
не увидел упоминания даже об утилите LOAD.
Известно ли, как производится вызов утилиты? Смею предположить, что если "из приложения", то дёргается процедура SYSPROC.ADMIN_CMD с соответствующей строкой на входе.

Для того же, чтобы отмониторить значения параметров, требуется "ACTIVITY MONITOR" и, например, такие действия, чтобы "протолкнуть" ACTIVITY (все ACTIVITY) в мониторящиеся:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
create event monitor activity_mon
  for ACTIVITIES
  write to TABLE
    ACTIVITY         (TABLE db2mon.activity          IN mon_tbs)
   ,ACTIVITYMETRICS  (TABLE db2mon.activitymetrics   IN mon_tbs)
   ,ACTIVITYSTMT     (TABLE db2mon.activitystmt      IN mon_tbs)
   ,ACTIVITYVALS     (TABLE db2mon.activityvals      IN mon_tbs)
   ,CONTROL          (TABLE db2mon.activity_ctrl     IN mon_tbs)
  MANUALSTART;

CREATE WORK CLASS SET    all_activities  (all_activities WORK TYPE ALL );

CREATE WORK ACTION SET  all_log
  for database
  USING WORK CLASS SET all_activities
  (WORK ACTION log on work class all_activities COLLECT ACTIVITY DATA WITH DETAILS AND VALUES);



Отмониторить только вызовы процедур:
Код: sql
1.
CREATE WORK CLASS SET    all_activities  (all_activities WORK TYPE ALL );


=>
Код: sql
1.
CREATE WORK CLASS SET    all_activities  (all_activities WORK TYPE CALL );


( см. детали )

Включать/выключать всю эту... конструкцию (помимо включения/выключения монитора):
Код: sql
1.
2.
3.
alter work action set all_log disable;
...
alter work action set all_log enable;



Общий принцип - чтобы мониторить значения параметров, нужно иметь или WORK ACTION в соответствующем WORK ACTION SET, или THRESHOLD c COLLECT ACTIVITY DATA WITH DETAILS AND VALUES в качестве ACTION.
Информация идёт во все активные ACTIVITY мониторы. Это всегда удобно, но, типа, так устроено внутре, чтобы мониторы были максимально лёгкими.


PS Да, в SYSIBMADM.DB_HISTORY информация по LOAD'ам в любом случае попадает. CMD_TEXT, правда, там в несколько хитрой форме.
...
Рейтинг: 0 / 0
06.09.2016, 14:46
    #39304461
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD
curious_manПоявилась необходимость увидеть все входящие параметры процедуры SYSPROC.DB2LOAD. Есть приложение, написанное на Java, которое загружает данные, используя утилиту DB2 SYSPROC.DB2LOAD.
Каким инструментом я могу увидеть эти параметры?
Если это действительно вызов
select * from syscat.routines where routineschema='SYSPROC' and routinename='DB2LOAD'
то либо:
Examples of using configuration properties to start a JDBC trace

либо EVENT MONITOR FOR ACTIVITIES и включать на одно из:
- сессию с помощью:
CALL WLM_SET_CONN_ENV (<APPLICATION_HANDLE>, '<collectactdata>WITH DETAILS AND VALUES</collectactdata>');
- всю базу (если WLM не используется, то там один пользовательский WORKLOAD):
ALTER WORKLOAD SYSDEFAULTUSERWORKLOAD COLLECT ACTIVITY DATA ON ALL WITH DETAILS AND VALUES

по окончании не забыть выключить сбор.
...
Рейтинг: 0 / 0
06.09.2016, 15:30
    #39304515
curious_man
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD
CawaSPb,

Вызывается так:
private static String PREPARE_SQL = "CALL SYSPROC.DB2LOAD (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
...
CallableStatement pstm = c.prepareCall(PREPARE_SQL);
pstm.setNull(1, Types.INTEGER);
pstm.setNull(2, Types.VARCHAR);
pstm.setString(3, loadCommand);
pstm.setNull(4, Types.INTEGER);
pstm.setNull(5, Types.VARCHAR);
pstm.setNull(6, Types.BIGINT);
pstm.setNull(7, Types.BIGINT);
pstm.setNull(8, Types.BIGINT);
pstm.setNull(9, Types.BIGINT);
pstm.setNull(10, Types.BIGINT);
pstm.setNull(11, Types.BIGINT);
pstm.setNull(12, Types.BIGINT);
pstm.setNull(13, Types.BIGINT);
pstm.setNull(14, Types.BIGINT);
pstm.setNull(15, Types.VARCHAR);
pstm.execute();
pstm.close();

Попробую достать значение переменной loadCommand описанными вами способом.
...
Рейтинг: 0 / 0
07.09.2016, 09:00
    #39304841
A.Panskikh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD
curious_man,

второй вариант - воспользоваться db2audit. В логе будут все параметры вызова.

Andy
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / DB2v10.1 for luw.Как увидеть все входящие параметры процедуры SYSPROC.DB2LOAD / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]