Что не так с моим анализом трассировки компаса?

Я сгенерировал поток событий с помощью lttng-ust, используя файл заголовка, содержащий следующее объявление события:

TRACEPOINT_EVENT(
random_chart,
point,
TP_ARGS(
    int, value_arg
),
TP_FIELDS(
    ctf_integer( int, value, value_arg )
))

После успешного открытия его в TraceCompass я попытался написать анализ с помощью XYChart, показывая этот поток создания ценности в виде простого графика. Мой XML-файл содержит следующее:

<?xml version="1.0" encoding="UTF-8"?>

<!-- The state provider assigns states from events -->
<stateProvider id="org.eclipse.linuxtools.ust.random_chart" version="1">
    <head>
        <traceType id="org.eclipse.linuxtools.lttng2.ust.tracetype" />
        <label value="Value chart analysis" />
    </head>

    <!-- Event handlers -->
    <eventHandler eventName="random_chart:point">
        <stateChange>               
            <stateAttribute type="constant" value="Dummy" />
            <stateAttribute type="constant" value="Value" />
            <stateValue type="eventField" value="value" />
        </stateChange>
    </eventHandler>
</stateProvider>

<!-- This is the definition of the XY chart view -->
<xyView id="my.test.xy.chart.view">
    <head>
        <analysis id="org.eclipse.linuxtools.ust.random_chart" />
    </head>

    <entry path="Dummy/Value">
        <display type="constant" value="Value" />
        <name type="self" />
    </entry>
</xyView>

Я не вижу, что с ним не так (даже после прочтения всех связанных файлов xml-схемы в git-репозитории).

Я могу импортировать это успешно, но после нажатия на "XML XY Chart View" я вижу пустой график и одно (последнее в потоке событий) значение под "тип фильтра текста".

AFAIK 'State System Explorer' показывает мне правильное 'Value at timestamp', соответствующее 'Full path path', равному 'Dummy/Value'. Вероятно, я что-то упустил.

EDIT1: я пытался исправить, но все еще не повезло:

<entry path="Dummy"> <display type="constant" value="Value" /> <name type="self" /> </entry>

EDIT2: та же проблема с:

<entry path="Dummy/Value">
   <display type="self" />
   <name type="self" />
</entry>

1 ответ

Решение

У вас есть 2 возможности решить проблему, учитывая, что у вас есть только один атрибут с данными:

1- Изменить <entry path="Dummy/Value"> в <entry path="Dummy"> и оставайся в покое

или же

2- Оставьте запись и измените элемент дисплея на <display type="self" />

Отображение типа константы означает, что он пытается прочитать атрибут этого имени по основному пути, поэтому здесь он пытался прочитать "Пустышка / Значение / Значение", которого не существует.

РЕДАКТИРОВАТЬ: Вот рабочий пример части представления для вашего анализа:

<xyView id="my.test.xy.chart.view">
<head>
    <analysis id="org.eclipse.linuxtools.ust.random_chart" />
    <label value="Random view" />
</head>

<entry path="Dummy">
    <display type="constant" value="Value" />
    <name type="self" />
</entry>
</xyView>
Другие вопросы по тегам