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
SessionEndTime not set for real-time session #199
Comments
I am trying to figure out the 'right' definition for SessionStopTime when the session is real time. Your suggestion is to make it the time of the last event. Can you describe the scenarios where this definition is helpful? Presumably it is for deciding the extent of the view when displaying the events, but it seems like you need special logic for real time events anyway since it changes over time (and you probably don't want it to be the time of the last event but round it up to something (e.g. next second, or next minute ..). |
I agree that adding this line will have negative impact on the performance - that's why I had doubts. In my scenario I would like to use |
I think it is perfectly reasonable to set the SessionEndTime when a real time session actually ends. This should be a trivial fix. |
I have added logic to set SessionEndTime at the end of a session (when Process() returns). |
Great - thanks a lot! |
SessionEndTimeRelativeMSec
property (of theTraceEventSource
, or to be more exactETWTraceEventSource
instance) should contain the relative time in ms from the ETW session start, but for the real-time sessions it is always set to max-date (even after the session was stopped). I checked the source code and found that after initialization it is never touched again. To compare,CtfTraceEventSource
sets thesessionEndTimeQPC
field value for each processed event. In my test I added the following line to theRawDispatch
method of theETWTraceEventSource
:and it seems to work. Though, I am not sure if it's a valid approach.
Thanks for checking this out.
The text was updated successfully, but these errors were encountered: