Closed snakefoot closed 1 month ago
run docs-build
This is ofcourse a breaking change, since adding new property to existing interface IEcsDocumentCreationOptions. Maybe change to use enum-flag-values?
I am not concerned breaking this in a non major update.
Yes its breaking but the chances someone updating a shipper/formatter without updating Elastic.CommonSchema are slim IMO.
@Mpdreamz This also needs some work on Serilog which i'll do in a separate PR.
I guess there are two directions:
That enricher is deprecated and so I rather update to a more recent serilog :)
Actually @snakefoot I think we are good for Serilog:
Dispatch calls Emit() which is where we do the Activity
inspection so its on the same callstack.
Similar to why we are good for extensions logging.
Serilog has the ability (Like NLog) to render on background-thread. See also: https://github.com/serilog/serilog-sinks-async/issues/93
But yes extensions logging is good.
Yeah there really is no sense in using us with serilog-sinks-async
, we already push our events over a channel that is being consumed in a background thread.
Will add an explicit note to our docs to not use us wrapped in the async sync.
Ahhh sorry,
Elastic.CommonSchema.Serilog
and using it with an async file sink is something we need to support.
Elastic.Serilog.Sinks
should never be wrapped in an async sink.
When enabling writing on background-thread, then one should not capture the activity-traceid of the background-thread.
I guess Serilog has the same issue, since it relies on its enricher-capture (similar to NLog layout capture)
This is ofcourse a breaking change, since adding new property to existing interface
IEcsDocumentCreationOptions
. Maybe change to use enum-flag-values?Alternative only perform automatic capture for Elastic.Extensions.Logging? (Skip helping NLog / Serilog / Log4net)