0

我使用头文件生成了一个带有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>

我看不出它有什么问题(即使在阅读了 git-repository 中所有相关的 xml-schema 文件之后)。

我可以成功导入它,但是在单击“XML XY 图表视图”后,我在“类型过滤器文本”下看到一个空图和一个(事件流中的最后一个)值。

AFAIK“状态系统资源管理器”向我显示了正确的“时间戳值”,对应于“完整属性路径”等于“虚拟/值”。可能我错过了什么。

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>
4

1 回答 1

2

鉴于您只有一个带有数据的属性,您有 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>
于 2018-05-15T12:03:45.620 回答