Файл trace что это
В сервер Oracle встроено множество диагностического кода. Часть его, например, sql_trace , хорошо описана в документации, а часть, например, представление x$trace , не документирована вовсе. Я люблю периодически посвящать некоторое время повторному анализу такого кода, чтобы узнать, насколько расширены его возможности, получили ли они официальное признание и описаны ли в документации. Недавно, работая с сервером Oracle 9i, я с удивлением обнаружил существенное расширение возможностей oracle_trace , которое произошло за последних пару релизов. Эта статья представляет собой краткое введение в oracle_trace и описание его возомжностей.
Как найти объект, являющийся источником всех событий buffer busy waits , которые можно увидеть в представлении v$waitstat ?
Все мы читали руководства по настройке производительности: "Если вы видите . может потребоваться увеличить количество списков свободных мест ( freelists ) для проблемной таблицы". Но там не сказано, как найти эту самую проблемную таблицу.
Вариант 1: выполнять непрерывный поток запросов к представлению v$session_wait и проверять значения столбцов p1 , p2 , p3 при возникновении этого события. Статистически, рано или поздно вы получите таким образом обоснованное представление о том, какой объект или объекты являются причиной проблемы. Этот вариант - достаточно болезненный, и результат его отчасти зависит от везения.
Вариант 2: включить событие 10046 на уровне 8 и получить поток информации об ожиданиях в трассировочных файлах. Весьма серьезно нагружает систему и тоже требует некоторого везения.
Вариант 3: есть событие (10240), которое должно порождать в трассировочном файле список адресов блоков, которые мы ожидаем (ура!), но мне еще не удавалось заставить это событие работать. Если вы знаете, как это сделать, сообщите мне, поскольку данное решение, безусловно, является оптимальным.
Итак, не хотите ли вы получить список именно тех блоков, которых приходится ждать, с идентфикаторами ожидающих сеансов, причиной и продолжительностью ожидания, и все это - с минимальными затратами ресурсов? Именно это, помимо прочего, и позволяет получить oracle_trace .
Что такое oracle_trace?
oracle_trace - это компонент сервера, собирающий информацию о событиях, используя сравнительно небольшие ресурсы.
Среди этих событий - ожидания, подключения, отключения, анализ и выполнение запросов, выборка строк, и некоторые другие.
Можно собирать информацию для всего экземпляра или только для определенных пользователей, событий или процессов; причем трассировку можно включать и отключать в любой момент.
Но одна из наиболее впечатляющих возможностей oracle_trace состоит в том, что можно организовать буферизацию собранной информации и сброс ее на диск большими блоками, вместо построчной выдачи. Более того, можно потребовать, чтобы файл с собранной инфрмацией был фиксированного размера и использовался повторно .
Есчтественно, сгенерировав файл с информацией, необходимо ее анализировать. Это можно сделать двумя способами - запустить программу, строящую по данным файла ряд текстовых отчетов, или запустить программу, читающую данные файла и сбрасывающую их в набор таблиц Oracle, по которым можно будет строить собственные отчеты.
Использование средств oracle_trace
Ну, и как oracle_trace поможет ответить на исходный вопрос?
Для каких объектов возникали события buffer busy waits , сколько приходилось ждать, как часто возникали ожидания и кто более всего пострадал?
Если смириться с дополнительными затратами ресурсов, можно при трассировке собирать даже ожидающие SQL-операторы, что позволит узнать, какие SQL-операторы больше всего пострадали от ожиданий.
Собираем все вместе
Сначала надо установить ряд параметров инициализации, чтобы на сервере можно было включить трассировку, но не включать ее сразу. Список этих параметров представлен на рис. 1.
Рисунок 1: Параметры инициализации, связанные с oracle_trace
Параметру oracle_trace_collection_name нужно явно задать пустое значение "" , ибо его стандартное значение - "oracle" , а если имя набора указано и трассировка включена, сервер Oracle выполняет трассироку на уровне экземпляра с момента запуска (ого!).
Параметр oracle_trace_collection_path задает каталог, в котором будут размещаться файлы. В каталоге oracle_trace_facility_path размещаются списки событий, которые можно трассировать ( facility definition files - файлы определения средств, предоставляемые Oracle Corporation). Параметр oracle_trace_facility_name задает список событий, которые нас интересуют. Наконец, можно ограничить размер (в байтах) файла с трассировочной информацией, задав значение параметра oracle_trace_collection_size .
После запуска сервера можно начинать сбор трассировочной информации.
В этой статье я буду использовать только средства командной строки, хотя есть и альтернативный PL/SQL-интерфейс (пакет dbms_oracle_trace_agent - прим. переводчика ), и даже графический интерфейс, если купить соответствующий модуль для Oracle Enterprise Manager. Мы будем использовать команду следующего вида:
Команда otrccol - основной интерфейс для oracle_trace . Есть и другие команды, но большинство их возможностей были добавлены в otrccol . Очевидно, что параметр start требует начать трассировку (а параметр stop - ее остановить). Значение " 1 " - произвольно выбранный идентификатор задания, а otrace.cfg - файл конфигурации. Пример файла конфигурации представлен на рис. 2.
Рисунок 2: Пример файла конфигурации oracle_trace
Этот файл требует от сервера создать файл с набором данных по имени jpl.dat , с файлом определения набора (collection definition file) по имени jpl.cdf и идентификатором набора jpl . Определение трассируемых средств находится в файле waits.fdf (этот файле предоставляется корпорацией Oracle и содержит только события ожидания). Размер файла трассировки будет ограничен 10 Мбайтами, но он будет использоваться повторно, так что, всегда будет содержать 10 Мбайт последних данных. Перед сбросом данных в этот файл сервер Oracle будет накапливать их в буфере размером 1 Мбайт.
Возможность задать regid - одна из наиболее мощных возможностей oracle_trace . "Стандартное" значение этой строки содержит '0 0' вместо моих '7 92' , и треубет, чтобы oracle_trace трассировал весь экземпляр Oracle, который задается идентификатором d901 в конце строки. Я же попросил трассировать только средство номер 7 (события ожидания) элемент 92 (ожидания buffer busy waits ).
При необходимости можно указывать в файле несколько строк regid . Для первого набора экспериментов я использовал две строки regid в файле конфигурации, задающие трассировку '7 129' и '7 130' - последовательные (sequential) и выборочные (scattered) чтения, соответственно, поскольку эти типы ожиданий легко сгенерировать.
Раздел, задающий особенности форматирования, я прокомментирую далее.
После того, как система поработает некоторое время, выполним:
Первая команда останавливает трассировку, вторая - читает файл и сбрасывает данные в ряд таблиц Oracle.
Однако прежде чем вы сможете сформатировать набор, надо создать схему, в которой будут находиться таблицы, используемые при форматировании. В качестве имени и пароля пользователя мы используем значения, представленные ранее на рис. 2. Строка full_format=1 в файле конфигурации приводит к тому, что в таблицы будет сброшен весь файл; установка full_format=0 приведет к сбросу только новых данных. Обратите внимание также на имя службы ( service ) - оно задает базу данных, в которой находится соответствующая учетная запись. Чтобы использовать команду format , надо запустить процесс прослушивания TNS (TNS listener), даже если данные сбрасываются в локальную базу.
На рис. 3 представлен небольшой сценарий, создающий учетную запись и предоставляющий ей необходимые привилегии.
Рисунок 3: Создание пользователя, в схеме которого будут находиться таблицы трассировки
При указании опции format программа автоматически (по крайней мере, в новых версиях Oracle) создаст необходимые таблицы в указанной схеме. Часть этих таблиц бцдет иметь вполне осмысленные имена, например:
Имена других будут лишены всякого смысла:
Проблему с неудобными именами можно решить, запусив сценарий otrcsyn.sql в каталоге $ORACLE_HOME/otrace/demo .
Этот сценарий создает синонимы для таблиц, давая им осмысленные имена, например:
(Имена отличаются в разных версиях Oracle.)
Я обнаружил небольшую проблему с автоматической генерацией таблиц. Если указать один из очень избирательных списков средств (например, waits.fdf ), создаются только таблицы, необходимые для представления соответствующих результатов при форматировании. Если затем вы решите использовать более полный список трассируемых средств (например, oracle.fdf ) при форматировании произойдет сбой, поскольку часть таблиц есть, а других - нет. Так что, может иметь смысл поработать несколько секунд, трассируя oracle.fdf , сформатировать данные, а затем выбросить (truncate) данные из всех таблиц. Это грубый, но эффективный метод настройки соответствующей схемы.
Некоторые результаты
Итак, что же мы сделали:
- Создали файл конфигурации
- Начали сбор данных
- Выполнили определенные действия в базе данных
- Остановили сбор данных
- Сформатировали набор данных
Предположим, мы использовали файл конфигурации, представленный на рис. 2. Подключившись от имени учетной записи otrace , мы обнаружим строки в таблицах connection , disconnect и wait . Строки в таблице wait расскажут на все о событиях buffer busy waits , произошедших за время трассировки.
Например, мы могли выполнить SQL-оператор, представленный на рис. 4:
Рисунок 4: Пример запроса, позволяющий выявить наиболее продолжительные ожидания занятых блоков
Если необходимо большая точность, можно выдать все ожидания с временными отметками, и столбцом, (довольно оптимистично) названным timestamp_nano .
Конечно, ничего (кроме снижения производительности) не мешает соединять эту таблицу с представлением dba_extents для преобразования идентификаторов файла и блока в типы и имена объектов.
А если необходимо выявить конкретные SQL-операторы, при выполнении которых пришлось ждать, всегда, хотя и ценой затраты еще больших ресурсов, можно перейти на использование файла sql_waits.fdf , который приводит к заполнению трассировочной информацией еще нескольких таблиц, которые затем можно соединять по столбцам session_index , session_serial , timestamp и timestamp_nano .
Наконец, если вы думаете, что затраты на загрузку данных в таблицы и построение отчетов отрицательно скажутся на системе, всегда можно перенести файлы cdf и dat на другую машину и обрабатывать их в другой базе данных. Мне удалось даже, с небольшими исправлениями, сгенерировать набор данных на экземпляре версии 9i, а затем обработать их на экземпляре версии 8i, просто чтобы доказать эту возможность. Это, конечно, затруднит возможность по номерам блоков определять объекты.
Будущее
Возможности бесконечны - например, один из файлов определения средств называется oraclec.fdf и позволяет отслеживать действия в буферном кэше. После трассировки этих действий можно, с точностью до микросекунды, определить, какие блоки были загружены в кэш, в каком порядке, и какие блоки пришлось вытеснить из кэша, чтобы можно было их загрузить. (Я подозреваю, что дополнительные расходы далеко не всегда позволят использовать этот метод.)
Еще одна возможность трассировки, которая многим пригодиться, представлена файлом connect.fdf . Он перехватывает подключения и отключения сеансов, во многом аналогично тому, как работает команда audit session . Однако в трассировочном файле накапливается еще полдюжины дополнительных статистических показателей (таких как записи повторного выполнения), которые в таблицу aud$ не попадают; и в процессе накопления запись в базу данных не выполняется.
Можно добраться и до отдельного пользователя: можно нацелить oracle_trace на трассировку действий одного пользователя. Можно даже написать SQL-оператор, читающий результирующие таблицы и генерирующий файл, аналогичный создаваемому sql_trace . При этом можно будет также отслеживать момент регистрации, перехода с одного разделяемого сервера на другой и, наконец, выхода.
Заключение
Это всего лишь краткое введение в oracle_trace , затронувшее основы его использования. Надо еще поработать над оценкой стабильности работы и побочных эффектов использования oracle_trace , не говоря уже про влияние на производительность.
Однако даже минимальное исследование показывает, что это средство требует значительно меньших расходов ресурсов, чем другие встроенные средства диагностики, обеспечивая большую гибкость и точность при построении отчетов.
В конечном итоге, oracle_trace позволяет получать точные ответы на ряд сложных вопросов, беспокоящих АБД многие годы.
Лично я не сильно удивлюсь, если oracle_trace в ближаших пару лет, в конечном итоге, заменит все остальные средства диагностики.
Проблема
Есть много отличий, обычно связанных только с именами, между реализациями oracle_trace в версиях Oracle 8i и Oracle 9i. Эта статья написана исключительно на базе Oracle 9i.
Ссылки
Программы, которые поддерживают TRACE расширение файла
Следующий список функций TRACE -совместимых программ. TRACE файлы можно встретить на всех системных платформах, включая мобильные, но нет гарантии, что каждый из них будет должным образом поддерживать такие файлы.
Трассировки. Файлы RUN
Трассировки. Файлы RUN можно открыть после записи с помощью>файла трассировкиFileStart debuggingOpen>.
Все выходные файлы трассировки хранятся в папке документов пользователей по умолчанию. Например, для User1 файлы TTD будут храниться здесь:
Расположение файлов трассировки можно изменить при запуске записи. Дополнительные сведения см. в разделе "Отладка перемещения по времени— запись".
Последний использованный список файлов позволяет быстро получить доступ к ранее использованным целевым файлам конфигурации. Также перечислены все недавно использовавшиеся файлы трассировки или файлы дампа.
Index file size
The index file is automatically created by WinDbg Preview when you open a trace for the first time. It contains information that helps the debugger to replay the trace and query information about memory more efficiently. Its size generally ranges from 1 to 2 times the size of the trace file. The factors that affect its size are similar to those that affect the size of the trace file.
First, the size of the index file scales relative to the length of the trace. A trace that contains a larger number of recorded instructions will generally have a larger index.
Second, the size of the index scales relative to the breadth of the memory accesses. If the program that was recorded frequently accessed a large number of distinct memory locations, the index will generally be larger than if the program that was recorded accessed fewer distinct memory locations or if accesses to memory locations was less frequent.
Since these factors are similar to the factors that affect the size of the trace file, the size of the index file generally scales relative to the size of the index file (thus our estimate that it's typically between 1x and 2x the size of the trace file).
сохранение трассировок
Сохраняйте собранные данные о событиях в файле или таблице SQL Server , если позднее нужно будет проанализировать или воспроизвести их. Используйте файл трассировки для решения следующих задач.
Используйте файл или таблицу трассировки с целью создания рабочей нагрузки, применяемой в качестве входных данных для помощника по настройке ядра СУБД.
Используйте файл трассировки для регистрации событий и отправки этих данных поставщику услуг поддержки с целью ее анализа.
Используйте инструменты обработки запросов SQL Server для доступа к данным или просмотра данных в приложении Приложение SQL Server Profiler. Непосредственно обращаться к таблице трассировки могут только элементы предопределенной роли сервера sysadmin и создатель таблицы.
Данные трассировки записываются в таблицу медленнее, чем в файл. Можно записать данные трассировки в файл, открыть его и сохранить трассировку в форме таблицы трассировки.
При использовании файла трассировки приложение Приложение SQL Server Profiler сохраняет собранные данные о событиях (не определения трассировок) в файле трассировки Приложение SQL Server Profiler с расширением TRC (*.trc). При сохранении файла трассировки это расширение автоматически добавляется к его имени независимо от любого другого указанного расширения. Например, если указать файл трассировки Trace.dat, созданный файл будет назван Trace.dat.trc.
Пользователи, которые имеют разрешение SHOWPLAN, ALTER TRACE или VIEW SERVER STATE, могут просматривать запросы, захваченные выходом Showplan. Эти запросы могут содержать конфиденциальные сведения, такие как пароли. В связи с этим рекомендуется предоставлять данные разрешения только пользователям, которые имеют право просмотра конфиденциальных данных, например членам предопределенной роли базы данных db_owner или членам предопределенной роли сервера sysadmin . Также рекомендуется сохранять файлы Showplan или файлы трассировки, содержащие события, связанные с инструкцией Showplan, только в каталог, расположенный в файловой системе NTFS, для которого есть возможность ограничить доступ, предоставляя его только пользователям, имеющим право просмотра конфиденциальных данных.
Trace file size factors
It is not possible to provide and exact estimate of the the trace file size but there are a few rules of thumb to help you understand TTD file sizes.
The following factors can affect the size of the trace file:
- The number of code instructions executed across all threads when recording the running app or process
- The length of time during which the app or process was recorded (only as this affects the number of code instructions recorded)
- The size of the memory data used by the app or process
The number of instructions executed and recorded is the biggest factor that affects the trace file size. A trace typically requires between 1 bit and 1 byte per instruction executed. A trace is likely to be towards the lower end of that range when the recorded program executes a smaller number of distinct functions and operates on a smaller set of data. A trace is likely to be towards the higher end of that range when the recorded program executes a larger number of distinct functions or operates on a larger set of data.
Recreating the .IDX file
TTD is local only and does not work remotely connected to another machine.
The machine where you replay the TTD trace must support all instructions that were used on the record machine - for example AVX instructions.
You can rename the file to include any additional information, such as the date or a bug number.
The .IDX file does not need to be copied as it can be re-created using the !index command as described above.
When collaborating with others, pass on any relevant trace positions related to the problem at hand. The collaborator can use the !tt x:y command to move to that exact point in time in the execution of the code. Time position ranges can be included in bug descriptions to track where the possible issue may be occurring.
Что делать, если у меня не будет места на диске?
Файлы трассировки и индекса TTD записываются на диск. В настоящее время не существует ограничения максимального размера файла для файла трассировки или индекса. Размер файла трассировки увеличивается до остановки записи или превышения объема доступного места на диске.
Недостаточно места на диске во время записи приводит к созданию файла трассировки с неполной записью выполнения кода. Незавершенный файл трассировки можно открыть в Предварительной версии WinDbg, но он может не включать фактическую проблему, если ошибка возникает после того, как при записи файла трассировки возникнет ошибка.
Во время индексирования: Отладчик может создать недопустимый файл индекса, что приведет к непредсказуемому поведению в отладчике или сбой узла обработчика отладчика.
Решение. Закройте отладчик и удалите любой файл индекса (IDX), который может существовать для трассировки. Освободите достаточно места на диске или переместите файл трассировки на другой диск с достаточным объемом свободного места. Снова откройте трассировку в отладчике и выполните индекс !index, чтобы создать новый, правильный индекс. Индексирование не изменяет исходный файл трассировки (RUN), поэтому данные не будут потеряны.
This section describes how to work with files created and consumed by time travel debugging.
Совместное использование трассировки TTD. Файлы RUN
TTD является локальным только и не работает удаленно подключен к другому компьютеру.
Файлы трассировки TTD можно предоставить другим пользователям, скопировав файл . RUN-файл. Это может быть удобно для того, чтобы коллега помог вам выяснить проблему. Им не нужно устанавливать аварийное приложение или выполнять другие связанные настройки, чтобы попытаться воспроизвести проблему. Они могут просто загрузить файл трассировки и отлаживать приложение, как если бы оно было установлено на своем компьютере.
Компьютер, на котором выполняется воспроизведение трассировки TTD, должен поддерживать все инструкции, которые использовались на компьютере записи, например инструкции AVX.
Вы можете переименовать файл, чтобы включить дополнительные сведения, такие как дата или номер ошибки.
Teh. IdX-файл не нужно копировать, так как его можно повторно создать с помощью команды !index, как описано выше.
При совместной работе с другими пользователями передайте все соответствующие позиции трассировки, связанные с проблемой. Участники совместной работы могут использовать !tt x:y команду для перехода к этой точной точке во времени выполнения кода. Диапазоны позиций времени можно включить в описания ошибок, чтобы отслеживать возможные проблемы.
Импорт и экспорт шаблонов
Приложение SQL Server Profiler позволяет импортировать и экспортировать шаблоны с одного сервера на другой. При экспорте шаблона копия существующего шаблона записывается в указанный каталог. При импорте создается копия указанного шаблона. Во время просмотра этих шаблонов в Приложение SQL Server Profiler их можно отличить от системных шаблонов по термину "(user)", который стоит после имени шаблона. Переписать или непосредственно изменить предопределенный системный шаблон нельзя.
Общие сведения о файле трассировки
Отладка перемещения по времени использует следующие файлы для отладки выполнения кода.
Файл трассировки содержит запись выполнения кода и имеет . Расширение RUN.
Файл индекса обеспечивает быстрый доступ к информации в файле трассировки и имеет . Расширение IDX.
Ошибки записи и другие выходные данные записи записываются в файл журнала отладчика.
Index .IDX files
Сохранение шаблонов
Определение шаблона трассировки включает классы событий, столбцы данных, фильтры и все прочие свойства (кроме перехватываемых данных событий), которые используются для создания трассировки. Приложение SQL Server Profiler предоставляет стандартные системные шаблоны для общих задач трассировки и для конкретных задач, таких как создание нагрузки, которую помощник по настройке ядра СУБД может использовать для настройки физической структуры базы данных. Кроме того, можно создавать и сохранять пользовательские шаблоны.
Коэффициенты размера файла трассировки
Невозможно предоставить и точно оценить размер файла трассировки, но существует несколько правил, которые помогут вам понять размеры файлов TTD.
Следующие факторы могут повлиять на размер файла трассировки:
- Количество инструкций по коду, выполняемых во всех потоках при записи запущенного приложения или процесса.
- Продолжительность записи приложения или процесса (только так как это влияет на число записанных инструкций кода)
- Размер данных памяти, используемых приложением или процессом
Количество выполненных и записанных инструкций — это самый большой фактор, влияющий на размер файла трассировки. Трассировка обычно требует от 1 бита до 1 байта на выполненную инструкцию. Трассировка, скорее всего, будет находиться в нижнем конце этого диапазона, когда записанная программа выполняет меньшее количество различных функций и работает с меньшим набором данных. Трассировка, скорее всего, будет находиться в более высоком конце этого диапазона, когда записанная программа выполняет большее количество различных функций или работает с большим набором данных.
Размер файла трассировки
Файлы трассировки TTD могут быть очень большими, и важно убедиться, что у вас достаточно свободного места на диске. Если вы записываете приложение или процесс даже в течение нескольких минут, файл трассировки может увеличиться до нескольких гигабайтов. Размер файла трассировки зависит от ряда факторов, описанных ниже.
TTD не задает максимальный размер файлов трассировки для сложных длительных сценариев. Быстрое повторное создание проблемы сохранит размер файла трассировки как можно меньше.
Размер файла индекса
Файл индекса автоматически создается с помощью Предварительной версии WinDbg при первом открытии трассировки. Он содержит сведения, помогающие отладчику воспроизводить данные трассировки и запрашивать сведения о памяти более эффективно. Размер файла трассировки обычно составляет от 1 до 2 раз. Факторы, влияющие на его размер, аналогичны тем, которые влияют на размер файла трассировки.
Во-первых, размер файла индекса масштабируется относительно длины трассировки. Трассировка, содержащая большее количество записанных инструкций, обычно будет иметь больший индекс.
Во-вторых, размер индекса масштабируется относительно ширины доступа к памяти. Если записанная программа часто обращается к большому количеству разных расположений памяти, индекс обычно будет больше, чем если программа, записанная для доступа к меньшему количеству отдельных расположений памяти, или если доступ к расположениям памяти был менее частым.
Так как эти факторы похожи на факторы, влияющие на размер файла трассировки, размер файла индекса обычно масштабируется относительно размера файла индекса (поэтому мы оцениваем, что он обычно находится в диапазоне от 1x до 2x размера файла трассировки).
Индекс. IDX-файлы
Индекс. IdX-файл создается для связанной трассировки. Запуск файла автоматически при открытии файла трассировки в Предварительной версии WinDbg. Файл индекса можно создать вручную с помощью команды !index. Индекс обеспечивает более быстрый доступ к сведениям трассировки.
IdX-файлы также могут быть большими, как правило, в два раза больше. RUN-файл.
Правило размера файла трассировки большого пальца
Файл трассировки увеличивается примерно на 5 МБ до 50 МБ в секунду при записи активного приложения или процесса в зависимости от указанных выше факторов размера файла трассировки.
Файл трассировки не будет увеличиваться, когда приложение или процесс, записываемый, простаит (например, при ожидании ввода).
В настоящее время для файлов трассировки не существует ограничения максимального размера файлов. Предварительная версия WinDbg может воспроизводить файлы трассировки, которые хорошо попадают в сотни гигабайтов в размере.
Error - Log File
Recording errors and other recording output is written to the debugger log file. To view the log file, select View > Logs.
This example shows the error log text when attempting to launch and record an executable named Foo.exe that is not in the C:\Windows directory.
Как открыть файл TRACE?
Проблемы с доступом к TRACE могут быть вызваны разными причинами. Что важно, все распространенные проблемы, связанные с файлами с расширением TRACE, могут решать сами пользователи. Процесс быстрый и не требует участия ИТ-специалиста. Мы подготовили список, который поможет вам решить ваши проблемы с файлами TRACE.
Шаг 1. Установите ThinApp программное обеспечение
Наиболее распространенной причиной таких проблем является отсутствие соответствующих приложений, поддерживающих файлы TRACE, установленные в системе. Решение простое, просто скачайте и установите ThinApp. Полный список программ, сгруппированных по операционным системам, можно найти выше. Если вы хотите загрузить установщик ThinApp наиболее безопасным способом, мы рекомендуем вам посетить сайт VMware, Inc. и загрузить его из официальных репозиториев.
Шаг 2. Убедитесь, что у вас установлена последняя версия ThinApp
Если проблемы с открытием файлов TRACE по-прежнему возникают даже после установки ThinApp, возможно, у вас устаревшая версия программного обеспечения. Проверьте веб-сайт разработчика, доступна ли более новая версия ThinApp. Может также случиться, что создатели программного обеспечения, обновляя свои приложения, добавляют совместимость с другими, более новыми форматами файлов. Если у вас установлена более старая версия ThinApp, она может не поддерживать формат TRACE. Последняя версия ThinApp должна поддерживать все форматы файлов, которые совместимы со старыми версиями программного обеспечения.
Шаг 3. Назначьте ThinApp для TRACE файлов
Если проблема не была решена на предыдущем шаге, вам следует связать TRACE файлы с последней версией ThinApp, установленной на вашем устройстве. Следующий шаг не должен создавать проблем. Процедура проста и в значительной степени не зависит от системы
Выбор приложения первого выбора в Windows
- Выберите пункт Открыть с помощью в меню «Файл», к которому можно щелкнуть правой кнопкой мыши файл TRACE.
- Далее выберите опцию Выбрать другое приложение а затем с помощью Еще приложения откройте список доступных приложений.
- Последний шаг - выбрать опцию Найти другое приложение на этом. указать путь к папке, в которой установлен ThinApp. Теперь осталось только подтвердить свой выбор, выбрав Всегда использовать это приложение для открытия TRACE файлы и нажав ОК .
Выбор приложения первого выбора в Mac OS
Шаг 4. Проверьте TRACE на наличие ошибок
Вы внимательно следили за шагами, перечисленными в пунктах 1-3, но проблема все еще присутствует? Вы должны проверить, является ли файл правильным TRACE файлом. Вероятно, файл поврежден и, следовательно, недоступен.
1. Проверьте TRACE файл на наличие вирусов или вредоносных программ.
Если случится так, что TRACE инфицирован вирусом, это может быть причиной, которая мешает вам получить к нему доступ. Немедленно просканируйте файл с помощью антивирусного инструмента или просмотрите всю систему, чтобы убедиться, что вся система безопасна. Если файл TRACE действительно заражен, следуйте инструкциям ниже.
2. Убедитесь, что файл с расширением TRACE завершен и не содержит ошибок
Если вы получили проблемный файл TRACE от третьего лица, попросите его предоставить вам еще одну копию. В процессе копирования файла могут возникнуть ошибки, делающие файл неполным или поврежденным. Это может быть источником проблем с файлом. Это может произойти, если процесс загрузки файла с расширением TRACE был прерван и данные файла повреждены. Загрузите файл снова из того же источника.
3. Проверьте, есть ли у пользователя, вошедшего в систему, права администратора.
Некоторые файлы требуют повышенных прав доступа для их открытия. Выйдите из своей текущей учетной записи и войдите в учетную запись с достаточными правами доступа. Затем откройте файл VMware ThinApp Trace Log Format.
4. Проверьте, может ли ваша система обрабатывать ThinApp
5. Убедитесь, что ваша операционная система и драйверы обновлены
Современная система и драйверы не только делают ваш компьютер более безопасным, но также могут решить проблемы с файлом VMware ThinApp Trace Log Format. Возможно, файлы TRACE работают правильно с обновленным программным обеспечением, которое устраняет некоторые системные ошибки.
Вы хотите помочь?
Если у Вас есть дополнительная информация о расширение файла TRACE мы будем признательны, если Вы поделитесь ею с пользователями нашего сайта. Воспользуйтесь формуляром, находящимся здесь и отправьте нам свою информацию о файле TRACE.
В этом разделе описывается работа с файлами, созданными и потребляемыми отладкой перемещения во времени.
Trace file size rule of thumb
The trace file grows roughly 5MB to 50MB per second when recording an active app or process, depending on the trace file size factors identified above.
The trace file will not grow when the app or process being recorded is idle (e.g., when waiting for input).
Currently there is no maximum file size limit for trace files. WinDbg Preview can replay trace files that are well into the hundreds of gigabytes in size.
Trace file size
TTD trace files can get really big and it is important to ensure that you have adequate free disk space available. If you record an app or process even just for a few minutes, the trace file may grow to be several gigabytes in size. The size of the trace file is dependent on a number of factors described below.
TTD does not set a maximum size of trace files to allow for complex long running scenarios. Quickly re-creating the issue, will keep the trace file size as small as possible.
Повторное воссоздание . IDX-файл
Вы можете воссоздать . IDX-файл из . Run file, using the !index command. Дополнительные сведения см. в разделе Отладка перемещения по времени — !index (перемещение по времени).
Анализ производительности при помощи шаблонов
Программы, обслуживающие файл TRACE
Windows
What if I run out of disk space?
Both the TTD trace and index files are written to disk. Currently there is not a maximum file size limitation for either the trace or index file. The trace file grows in size until you stop recording or exceed the amount of available disk space.
During recording: TTD will write out last page to the trace file and then effectively wait until it can write again. WinDbg continues to show the Recording dialog but does not show an error/warning message when running out of disk space during recording.
Running out of disk space during recording results in a trace file with an incomplete record of the code execution. The incomplete trace file can be opened in WinDbg Preview but it may not include the actual problem if the error occurs after running out of disk space when writing the trace file.
During indexing: The debugger may produce an invalid index file, resulting in unpredictable behavior in the debugger, or the debugger engine host may crash.
Сохранение файлов трассировки нужно отличать от сохранения шаблонов трассировок. Сохранение файла трассировки предполагает сохранение собранных данных о событиях в указанном месте. Сохранение шаблона трассировки связано с сохранением определения трассировки (например указанных столбцов данных, классов событий или фильтров).
Ошибка — файл журнала
Ошибки записи и другие выходные данные записи записываются в файл журнала отладчика. Чтобы просмотреть файл журнала, выберите ViewLogs >.
В этом примере показан текст журнала ошибок при попытке запустить и записать исполняемый файл с именем Foo.exe, который не находится в каталоге C:\Windows.
Trace File Overview
Time Travel Debugging uses the following files to debug code execution.
The index file enables quick access to information in the Trace file and has an .IDX extension.
Recording errors and other recording output is written to the debugger log file.
You can change the location of the trace files when you start to record. For more information, see Time Travel Debugging - Recording.
The most recently used list of files allows you to quickly access previously used target configuration files. Any recently used trace files or dump files are listed as well.
Программы, обслуживающие файл TRACE
Windows
Читайте также: