Git Product home page Git Product logo

nlog.github.io's Introduction

NLog

NuGet Semantic Versioning NuGet downloads

Coverage

NLog is a free logging platform for .NET with rich log routing and management capabilities. It makes it easy to produce and manage high-quality logs for your application regardless of its size or complexity.

It can process diagnostic messages emitted from any .NET language, augment them with contextual information, format them according to your preference and send them to one or more targets such as file or database.

Major and minor releases will be posted on project news.

Getting started

For the possible options in the config, check the Options list and API Reference

Having troubles? Check the troubleshooting guide


โ„น๏ธ NLog 5.0 Released!

NLog 5.0 is finally here. See List of major changes in NLog 5.0

NLog Packages

The NLog-nuget-package provides everything needed for doing file- and console-logging. But there are also multiple NLog extension packages, that provides additional target- and layout-output. See targets and layout renderers overview!

See Nuget/build status of all official packages here

Questions, bug reports or feature requests?

Issues with getting it working? Please check the troubleshooting guide before asking! With a clear error message, it's really easier to solve the issue!

Unclear how to configure NLog correctly of other questions? Please post questions on StackOverflow.

Do you have feature request or would you like to report a bug? Please post them on the issue list and follow these guidelines.

Frequently Asked Questions (FAQ)

See FAQ on the Wiki

Contributing

As the current NLog team is a small team, we cannot fix every bug or implement every feature on our own. So contributions are really appreciated!

If you like to start with a small task, then up-for-grabs are nice to start with.

Please note, we have a dev and master branch

  • master is for pure bug fixes and targets NLog 4.x
  • dev targets NLog 5

A good way to get started (flow)

  1. Fork the NLog repos.
  2. Create a new branch in you current repos from the 'dev' branch. (critical bugfixes from 'master')
  3. 'Check out' the code with Git or GitHub Desktop
  4. Check contributing.md
  5. Push commits and create a Pull Request (PR) to NLog

Please note: bugfixes should target the master branch, others the dev branch (NLog 5)

License

NLog is open source software, licensed under the terms of BSD license. See LICENSE.txt for details.

How to build

Use Visual Studio 2019 and open the solution 'NLog.sln'.

For building in the cloud we use:

  • AppVeyor for Windows- and Linux-builds
  • SonarQube for code coverage

Trying to build your fork in the cloud? Check this how-to

Note: master points to NLog 4.x and dev to NLog 5.x

nlog.github.io's People

Contributors

304notmodified avatar abakumov-v avatar amitsaha avatar asaharn avatar cbolandk20 avatar corentinaltepe avatar cvanbergen avatar dnlgmzddr avatar gamingrobot avatar hayrullahcansu avatar jkowalski avatar josh-degraw avatar jtheisen avatar kaykins avatar kevindaub avatar kichristensen avatar linmasaki avatar lucaritossa avatar lucianaparaschivei avatar luigiberrettini avatar michelmichels avatar mikhail-barg avatar mirimon avatar prcdpr avatar pysco68 avatar repo-ranger[bot] avatar snakefoot avatar thomasardal avatar timbussmann avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nlog.github.io's Issues

Cleanup Platforms for config items ?

Consider to cleanup platforms and just have .NET Framework and .NET Standard. Further platform-details should be displayed on wiki-page.

        "platforms": [
            "net35",
            "net40",
            "net45",
            "netstandard1.3",
            "netstandard1.5",
            "netstandard2.0",
            "ios",
            "android",
            "mono",
            "wp8"
        ],

Notice .NET Framework 4.6.1 supports .NET Standard 2.0, so maybe just remove the platforms all together? (And .NET Standard 1.3 + 1.5 are no longer super important).

API docs: favicon is currently manual action.

Now manual action to overwrite the favicon for the API docs.

From: NLog.github.io\favicon.ico

To: NLog.github.io\documentation\v3.2.1\icons\favicon.ico

TODO: create post step in SHFB config

Config options for NLog.Web shows wrong package + missing stuff

When going to this URL:

https://nlog-project.org/config/?tab=layout-renderers&search=package:nlog.web

  • Then one sees the following ${configsetting] item:

image

Missing

Btw. the following pages are missing:

Enhancements

  • GrowlNotify should probably be moved into Integrations (GUI tools)
  • R7 InsightOps should probably be moved into Integrations (Cloud)
  • EventLog from NLog.WindowsEventLog should probably say "Writes log message to the Windows EventLog for NetCore".

Better list for targets, layoutrenderers & layouts (including platform support)

The current lists on the current pages (targets, layoutrenderers & layouts) aren't that good. Also the current platform support page is difficult to read.

problems:

  • people can't find the needed targets etc (browser search is limited)
  • the platform support list is in another page.

working on a prototype: https://304notmodified.github.io/search

TODO:

  • search on title and description
  • platform filter
  • hyperlink to nuget package
  • hyperlink to more docs (relative to wiki or absolute)
  • finish/improve styling
  • search on keywords
  • complete platform support in the .JSON files
  • update the absolute url to the JSON files
  • fix focus on field (Vue issue)
  • better page name?
  • better url (not /search)
  • include external packages
  • use platform-notes
  • show "is wrapper"
  • move css to separate file
  • vue no dev mode
  • search on ${..} broken
  • sorted
  • add text for targets, layouts etc (from current wiki)
  • update platforms for all external packages

updates:

  • add NLog.WindowsEventLog package
  • fix package:
    image

Nice-to-have:

  • search in url
  • persist value dropdown in localstorage
  • persist tab in URL
  • hightlight searched text
  • loader
  • grouped
  • Vue components

feedback:

  • no "empty" group
  • unsort the groups

Aliases

@snakefoot I think it's important to make the aliases visible and searchable on https://nlog-project.org/config.

  1. What do you think about this design?
  • Added aliases to the end
  • Added prefix "package" for the packages

image

  1. What should be do with NLog 4 and NLog 5? Do I need to copy the page and jsons for NLog 5?

elmah.io target last in list

The new searchable targets list is awesome. But I just noticed that the elmah.io target is last in the "Integrations (Cloud)" list. Personally, I don't care where the target is on the list, but it just looks a bit weird that everything else is sorted alphabetically. I looked in the code and cannot seem to figure out why it's added as the last item. The target is added here, but it doesn't look like the order in this file is used when generating the website.

Consider moving appsettings schema to schemastore

We have discussed the NLog schema for appsettings.json files previously. Now that Microsoft finally seems to have embraced the schema available on SchemaStore (https://devblogs.microsoft.com/aspnet/intellisense-for-appsettings-json/), maybe now would be a good time to move the NLog schema to the appsettings.json schema on SchemaStore. Or what are your thoughts on this? As an alternative, the recent code from the appsettings.json schema on SchemaStore should be used for NLog's schema, rather than the current code which is a copy of an early attempt I made ๐Ÿ‘

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.