-
-
Notifications
You must be signed in to change notification settings - Fork 116
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
Add timestamp to the KLoggingEvent #425
Comments
Thank you for reporting an issue. See the wiki for documentation and slack for questions. |
PR for adding the capability is welcome. few comments:
|
I'm curious what would be the purpose or use case for this field? |
@imherrera Saving exact event time for logging (there might be a time gap between event and putting event into log) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
When I comparing
LoggingEvent
from slf4j withKLoggingEvent
I can see the last important missing part - TimeStamp (Maybe ThreadName is also important, but I don't really know how threads in Native/WASM world work. Maybe current coroutine name/dispatcher is worth to add as well).It's a proposal to add a timestamp into
KLoggingEvent
.I think the
Instant
from https://github.com/Kotlin/kotlinx-datetime is a good candidate for this field type. I don't know your thoughts about adding dependencies to the library, though. On the other hand, it's a decent and small KMP library by JB which might do the trick as adding oneliner:It might also help with date/time formatting inside
Formatter
.I assume
payload
might be another place to put timestamp into by custom logger... I haven't really getpayload
field's architecture purpose yet. But it's still worth to discuss separated field anyway, as using Map withString
key for such popular field might cause performance issues (as well as addingClock.System.now()
in every logging event. I haven't really measured its performance, but I assume it's fast and not a problem).The text was updated successfully, but these errors were encountered: