Skip to content

Conversation

@drazumova
Copy link

В конфигуре появился флажок --enable-lttng.
Пока что нужно добавлять --enable-dtrace=no, так как поумолчанию он включен, если доступен.
Возможно, я неправильно поняла части автоконфигурации и добавление получилось не минимальным, но так пока работает)
В lttng_examples появилась папочка test, там просто hello world, но он ловит все созданные события. У части событий есть параметры, смысл которых мне пока не ясен (у них есть вопросики в lttngTracepoints), надеюсь, если их половить, то станет лучше.
Все-таки сделала отдельный файлик с дефайнами, чтобы не было проблем с генерацией файликов для ustd проб. (там дублируются пустые дефайны, но их можно убрать)

Copy link
Member

@AntonKozlov AntonKozlov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

В конфигуре появился флажок --enable-lttng.
Пока что нужно добавлять --enable-dtrace=no, так как поумолчанию он включен, если доступен.
Возможно, я неправильно поняла части автоконфигурации и добавление получилось не минимальным, но так пока работает)

Наверно основная претензия в том, что не может быть одновременно lttng и dtrace событий. Хотелось бы, чтобы они могли сосуществовать

В lttng_examples появилась папочка test, там просто hello world, но он ловит все созданные события.

У части событий есть параметры, смысл которых мне пока не ясен (у них есть вопросики в lttngTracepoints), надеюсь, если их половить, то станет лучше.

Их значение можно узнать из кода. На опредлененном уровне, они могут выступать просто как идентификаторы, их можно отдавать как есть

Все-таки сделала отдельный файлик с дефайнами, чтобы не было проблем с генерацией файликов для ustd проб. (там дублируются пустые дефайны, но их можно убрать)

Не совсем понял, можешь пояснить?

DISABLED_JVM_FEATURES="$DISABLED_JVM_FEATURES epsilongc g1gc zgc shenandoahgc"
fi
# Turn on additional features based on other parts of configure
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Это похоже на ошибку

#undef TRACEPOINT_INCLUDE
#define TRACEPOINT_INCLUDE "./utilities/lttngHSPrivate.hpp"

#if !defined(_VM_METHODS_TP_H) || defined(TRACEPOINT_HEADER_MULTI_READ)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

_VM_METHODS_TP_H -- это guard macro, чтобы файл не инклюдился несколько раз?

  1. Идентификатор используется здесь и в lttngTracepoints.hpp, ошибка. Лучше начинать по имени, вроде LTTNG_HS_PRIVATE_H_
  2. начинать с _ не стоит -- такие имена зарезервированны за ОС/компилятором

),
TP_FIELDS(
ctf_string(class_name, name)
// ctf_integer(class_loader_data, class_loader_data) // ?????????????
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Это class loader, объект ответственный за загрузку класса. Это указатель на самом деле. Превратить его в integer (лучше в long, чтобы указатель поместился) -- нормальное решение

ctf_string(class_name, class_name)
ctf_string(method_name, name)
ctf_string(signature, sig)
//insts ??
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Это начало инструкций в скомпилированном коде. Сделать из них longи -- норм

TP_ARGS(
bool, full),
TP_FIELDS(
ctf_integer(bool, full, full) //??
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

void VM_GC_Operation::notify_gc_begin(bool full) {
  HOTSPOT_GC_BEGIN(
                   full);

полная или не полная сборка

@drazumova
Copy link
Author

drazumova commented Jan 11, 2020

DTRACE_PROBE... нельзя переопределить, поэтому пока непонятно, как делать и ustd, и lttng ивенты одновременно, так как из кода обращаются непосредственно по сгенеренным именам.

Все-таки сделала отдельный файлик с дефайнами, чтобы не было проблем с генерацией файликов для ustd проб. (там дублируются пустые дефайны, но их можно убрать)
Не совсем понял, можешь пояснить?

Могла быть проблема в том, что для генерации файликов с дефайнами проб (dtracefiles/hotspot.h) проверяется, что есть все необходимое, но если его нет (а все для работы lttng трейспоинтов есть), было бы странно падать с ошибкой.

@drazumova
Copy link
Author

drazumova commented Mar 6, 2020

оказалось, что регэкспы все-таки ужасные, поэтому теперь есть #16

@AntonKozlov
Copy link
Member

т.е. на этот PR можно не смотреть?

@drazumova drazumova closed this Mar 26, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants