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

Add logging with LibLog #315

Closed
bgrainger opened this issue Aug 25, 2017 · 1 comment
Closed

Add logging with LibLog #315

bgrainger opened this issue Aug 25, 2017 · 1 comment
Milestone

Comments

@bgrainger
Copy link
Member

LibLog (NuGet) is "a single file for you to either copy/paste or install via nuget, into your library/framework/application to provide a logging abstraction".

A source code package designed primarily for library and framework authors who want dependency free logging support in their component.

@bgrainger bgrainger added this to the 1.0 milestone Oct 22, 2017
@bgrainger
Copy link
Member Author

After getting the LibLog source code, I see that it uses dynamic in a few places, which is potentially bad for performance and brings in unwanted dependencies.

Additionally, it's not clear that the library was developed with performance as a primary concern; ideally, the library should be (close to) zero overhead if logging is disabled. damianh/LibLog#129 discusses this and other issues.

Npgsql had a custom logging implementation, then switched to Microsoft.Extensions.Logging, then reverted that: npgsql/npgsql#1438. They are currently looking at LibLog, and may switch when performance is improved.

For now, I plan to follow their approach and define a custom interface. We could also publish additional NuGet packages for common logging frameworks that automatically hook them up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

1 participant