Можно активировать другие специальные функции трассировки с целью поиска неисправностей, в частности, анализа производительности отдельных транзакций. Можно использовать ►Performance Analysis (анализ производительности) для активации сбора данных в следующих областях:
► Трассировка SQL
Обращения к базе данных отчетов и транзакций
► Трассировка очередей
Поведение системных блокировок
► Трассировка RFC
Вызовы RFC функциональных модулей между инстанциями
► Трассировка буферов
Трассировка табличного буфера
В этом случае записываются все команды SQL, которые создаются действиями пользователя, вместе с продолжительностью, результатами и данными. Можно использовать ►Performance Analysis • Deactivate Trace • Display Trace (или ►Performance Analysis • Performance Trace • Display Trace or Deactivate First) сначала для фильтрации данных по различным критериям, а затем их анализа.
Рис. 15.11.
На рис. 15.12 показан фрагмент трассировки SQL. Например, время выполнения оператора
□ SELECT WHERE 'MANDT' = 'EXP' AND 'SOURCEMAND' = '001' OR 'MANDT' = '001' ORDER BY 'TSTAMP'
было в этом случае 59 миллисекунд (ms), поиск происходил в таблице CCC-FLOW (отслеживаемой операцией был вывод журналов копирования клиента). Продолжительность операции всегда определяется в миллисекундах. Команды, которые превышают определенное время выполнения и поэтому могут быть критическими, выделяются красным.
Рис. 15.12.
Выберите Edit • Explain for SQL statement, чтобы вызвать план выполнения, вычисленный оптимизатором для этой команды. Выберите Goto • АВАР Display, чтобы перейти к программе АВАР, где был сгенерирован оператор SQL.
Столбцы таблицы имеют слегка отличные значения в зависимости от используемой трассировки (см. таблицу 15.4).
Таблица 15.4.
Столбец | Трассировка SQL | Трассировка очереди | Трассировка RFC | Трассировка буфера |
Duration | Продолжительность выполнения оператора | Продолжительность выполнения оператора | Продолжительность выполнения оператора | Продолжительность выполнения оператора |
Object Name | Таблица или процедура БД | Объект блокировки | Имя инстанции | Имя таблицы |
Operation | Выполняемая в базе данных операция | Операция блокировки | Роль (клиент или сервер) | Функция, выполняемая для объекта в буфере |
Records | Число обработанных записей | Number of granulates | Тип записи | Число прочитанных записей |
RC | Возвращаемый код из РСУБД | 0: Правильно | 0: Правильно | 0: Правильно |
2: Коллизия | 64: Записей не найдено | |||
8: Внутренняя ошибка | 256:Запись недоступна | |||
1024: Загрузка буфера |