Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How TraceCompass expects UST CallStack #3

Open
AntonKozlov opened this issue Oct 18, 2019 · 8 comments
Open

How TraceCompass expects UST CallStack #3

AntonKozlov opened this issue Oct 18, 2019 · 8 comments
Assignees

Comments

@AntonKozlov
Copy link
Member

No description provided.

@drazumova
Copy link

If the traces contains func_entry and func_exit event (see the lttng-ust-cyg-profile manpage), AND contains vtid and procname contexts, we can use this information to populate the TMF Callstack View.
Granted, most UST traces will not contain this information. In this case, this will simply build an empty state system, and the view will remain unavailable.

author Alexandre Montplaisir

В коде названия событий просто сравниваются с lttng_ust_cyg_profile:func_entry (или lttng_ust_cyg_profile_fast:func_entry)
vtid и procname достаются как поля с именами context._<name>.

@AntonKozlov
Copy link
Member Author

А вот здесь добавляется "context" и "vtid" -- как раз те штуки, которые мы не могли сделать руками, что не хватает для call-stackа. Или я чего-то не понял?

@drazumova
Copy link

Да, эта команда должна добавлять context._vtid, но почему-то в данном примере это не работает. То есть в результате в записи событий нет такого поля

@AntonKozlov
Copy link
Member Author

но почему-то в данном примере это не работает. То есть в результате в записи событий нет такого поля

Может быть, надо репортить как-то специально? Можно глянуть сорцы lttng-ust-cyg-profile, как же он создает события func_enter/exit

@drazumova
Copy link

lttng-ust библиотеки не добавляют для этого ничего своего для этого. Оказалось, что это я дурак, и диаграмма строится с одинаковыми tid и procname
Теперь проблема только в том, чтобы добавить адрес функции, которая вызвала текущую.

@drazumova
Copy link

drazumova commented Nov 15, 2019

Еще есть проблема с org.eclipse.equinox.p2.core.ProvisionException: No repository found at http://download.eclipse.org/linuxtools/update-2018-09-rc2. при сборке мастера tracecompassа.

На всякий случай уточню, что это происходит в мастере трейскомпаса и в ветке stable-1.0 при mvn clean install

@AntonKozlov
Copy link
Member Author

Договорились, что надо попробовать собрать из под eclipse

@MatthewKhouzam
Copy link

Hey, I just found your project, it looks really cool! Tracecompass can support many types of callstacks if you look at the incubator. There is an "In and out" analysis where you can define the discriminators.

Here's a video, hope it helps! https://www.youtube.com/watch?v=J8ksYjZOEFc

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

No branches or pull requests

3 participants