< Пред. раздел Содержание След. раздел >
В зависимости от решаемой задачи, вы можете запускать LightProfiler с графическим интерфейсом или интерфейсом командной строки.
Чтобы помочь вам определиться, рассмотрим следующие факты:
Интерфейс командной строки рекомендуется использовать для построения профиля больших трейс-файлов. В прочих случаях, графический интерфейс будет лучшим выбором.
Для запуска приложения с интерфейсом командной строки, необходимо выполнить основной файл: (lightprofiler.py или lightprofiler.exe), используя параметры. Данные параметры можно разделить на следующие группы:
Все обязательные параметры должны быть перечислены после имени исполняющегося файла (lightprofiler.py или lightprofiler.exe), а отсутствующие необязательные параметры будут заменены значениями из файла настроек, или значениями по умолчанию (подробнее о необязательных параметрах — опциях приложения, вы можете прочитать в соответствующем разделе Опции).
Следующие параметры являются обязательными для запуска приложения в командной строке:
К специальным параметрам относятся:
Пример запуска приложения в командной строке:
Рис. 5 Запуск приложения без графического интерфейса
По умолчанию, приложение запускается с графическим интерфейсом. Для запуска вам необходимо выполнить следующие действия, в зависимости от используемого формата приложения:
Внешний вид
При запуске приложения с графическим интерфейсом, вы автоматически перейдете на основной экран:
Рис. 6 Основной экран
На основном экране приложения можно выделить следующие области:
Приведенная иллюстрация, также, содержит пример окна профайлера (область № 5), более подробное описание которого вы найдете в соответствующем разделе Профайлер.
Меню
Текущая версия LightProfiler имеет следующую структуру меню:
Рис. 7 Официальный сайт проекта
Рис. 8 Страница поддержки проекта
Рис. 9 Форма комментария
Рис. 10 Форма сообщения об ошибке
Примечание:
Панель инструментов
Панель инструментов приложения содержит следующие элементы управления:
Профайлер
Профайлер — встроенный инструмент приложения, предназначенный для анализа трейс-файлов и формирования отчетов. При запуске приложения с графическим интерфейсом вы можете использовать произвольное количество профайлеров.
Ниже приведен пример окна профайлера:
Рис. 11 Окно профайлера
Для окна профайлера можно выделить следующие зоны:
Рис. 12 Окна профайлера и разделов профиля
Общие
Данная закладка содержит элементы управления для выбора трейс-файла и заведения комментария9.
Рис. 13 Закладка «Общие»
Журнал
Данная закладка предназначена для отображения журнала работы активного профайлера. Содержимое вкладки может быть удалено (кнопка «Очистить») или выгружено в файл (кнопка «Выгрузить»).
Рис. 14 Закладка «Журнал»
Также, журнал имеет встроенное средство поиска, которое вы можете вызвать нажатием клавиш Ctrl+F.
Рис.15 Диалог поиска
Результат(ы) поиска выделяются в тексте журнала (данное выделение сбрасывается при повторном поиске или нажатии кнопки «Сбросить все».
Примечание:
Отладка
Примечание:
Использование режима отладки позволяет собирать для предложений SQL дополнительную информацию: строки исходного трейс-файла, подробности по выполняемым расчетам, а также формировать sdmp-файлы (см.Глоссарий)
Рис.16 Закладка «Отладка»
На данной закладке можно выделить следующие группы элементов:
Текущая версия приложения позволяет осуществлять отладку в следующих режимах:
Примечание:
Инструменты
В данном разделе приведено описание базовых инструментов а также необходимая информация об их разработке.
LpCombiner
LpCombiner – инструмент, предназначенный для извлечения данных сессии из одного или нескольких трейс-файлов.
Рис. 17 Инструмент «LpCombiner»
В зависимости от конфигурации сервера Oracle и используемой ОС, в один трейс-файл могут быть помещены данные нескольких сессий, или данные одной сессии могут быть размещены в нескольких трейс-файлах. Для решения подобных проблем и предназначен данный инструмент. Он разбирает содержимое трейс-файлов в поисках идентификаторов сессий (строки вида *** SESSION ID:...) и выстраивает их в правильном порядке (в соответствии с указанной датой), формируя новый «псевдо» трейс-файл.
В верхней части закладки «Управление» размещена панель инструментов, которая позволяет выполнить следующие операции:
В нижней части выводится список трейс-файлов, выбранных для анализа.
LpSplitter
LpSplitter - инструмент, разработанный для разделения трассировочного файла на несколько частей.
Рис. 18 Инструмент «LpSplitter»
Для выполнения разбиения трейс-файла вам необходимо:
При необходимости, вы можете включить в формируемые файлы преамбулу исходного трейс-файла, отметив это в поле «Включить преамбулу в файлы».
LpDBMonitor
LpDBMonitor - небольшой монитор для базы данных Oracle. Показывает сессии БД и связанную информацию. Также позволяет вкл./выкл. трассировку или отсоединять сессию.
Примечание:
Рис. 19 Инструмент «LpDBMonitor»
Окно инструмента можно разделить на следующие области:
Разработка
Инструмент — приложение на языке Python, имеющее интерфейс, использующий библиотеку tkinter, и оформленное согласно определенным требованиям.
Файлы, используемые инструментом, размещаются в отдельном каталоге (далее — каталог инструмента), имеющем определенную структуру. Ниже приведена структура инструмента LpSplitter:
Рассмотрим процесс разработки собственного инструмента с названием usertool на ОС Windows:
##########################
### global translator
##########################
go_translator = cl_ToolTranslator()
_ = go_translator.get
_u = go_translator.get
, где cl_ToolTranslator — объект импортированный из модуля lptoolapi
def __init__(self,**kw):
global go_translator
kw['helptext'] = __toolhelp__
kw['translator'] = go_translator
kw['toolpath'] = os.path.split(__file__)[0]
kw['toolid'] = __toolid__
kw['toolname'] = __toolname__
kw['toolversion'] = __toolversion__
if 'mw' not in kw:
kw['mw'] = __toolmw__
if 'mh' not in kw:
kw['mh'] = __toolmh__
cl_ToolAPI.__init__(self,**kw)
self.__guiitem = cl_ToolAPI.api_get_guiitem(self)
На этом процесс создания инструмента завершен - новый инструмент будет доступен для использования в LightProfiler:
Рис. 20 Добавление нового инструмента
Команды
«Команды» - механизм, позволяющий выполнять команды ОС или запускать другие приложения из LightProfiler, при необходимости, используя атрибуты активного профайлера.
Настройка
Настройка команд производится в диалоге «Команды», вызвать который вы можете, через меню приложения (Окружение/Команды), или через панель инструментов (кнопка «Команды»).
Рис. 21 Диалог «Команды»
Диалог состоит из следующих областей:
Создание или редактирование команды происходит в «Редактор команд» — диалоге, предназначенном для ввода текста и параметров команды.
Рис. 22 Диалог «Редактор команд»
Параметры
При редактировании команды можно использовать специальные теги «Параметры» - фрагменты текста, которые будут заменены на конкретные значения при выполнении команды.
Текущая версия приложения позволяет использовать следующий набор параметров:
Выполнение
Выполнение команды производится следующим образом:
1Если пользователь выберет несколько трейс-файлов, то приложение автоматически создаст недостающие профайлеры
2Операция «Анализ» является обязательной для формирования любых отчетов приложения
3Перечислены базовые инструменты текущей версии приложения
4Диалог для настройки опций приложения может быть вызван нажатием комбинации клавиш Ctrl-O
5Для открытия файла необходима программа для просмотра pdf
6Приложение распространяется с руководством пользователя на английском языке, при необходимости, вы можете скачать руководство на другом языке с официального сайта и поместить в каталог doc
7Диалог для настройки опций профайлера может быть вызван нажатием комбинации клавиш Ctrl+P
8Профайлер имеет меньшее количество доступных для изменения опций
9Если поле «Комментарий» заполнено, то его содержимое будет включено как дополнительный раздел отчета «Профиль ресурсов»
10Для предложений RPC CALL приложение использует идентификатор построенный по правилам 0_RPC_<порядковый номер уникального имени подпрограммы в трейс-файле>
11Размер формируемых трейс-файлов может отличаться от заданного, так как при выполнении операции происходит построчное копирование а также не учитывается размер преамбулы исходного трейс-файла
12В целях безопасности пароли не сохраняются
13В данных закладках реализована обработка комбинации клавиш Ctrl-L — переход к выбранной сессии в панели сессий
14В текущей версии каталоги инструментов располагаются в <каталог приложения>/resources/
15Иконка инструмента указывается в текстовом формате, подробное описание вы можете найти в http://code.activestate.com/recipes/52264