Code Monkey home page Code Monkey logo

logger's Introduction

Simple Logger

GitHub license

Simple implementation of Logger. Now there are several languages implementations: C#, C++ and Python.

LogConfig.xml

Customize your logger behavior by changing source code or only changing the LogConfig.xml for example log pattern, console colors, etc.

<Appender Name="FileAppender" Type="FileAppender">
    <File Path="Logger.log" AppendTo="true"/>
    <Pattern Value="{0:yyyy/MM/dd H:mm:ss}: [{1}] {2}"/>
</Appender>
<Appender Name="ConsoleAppender" Type="ConsoleAppender">
    <Pattern Value="{0:yyyy/MM/dd H:mm:ss}: [{1}] {2}"/>
</Appender>
<!-- ColoredConsoleAppender only available in C# -->
<Appender Name="ColoredConsoleAppender" Type="ColoredConsoleAppender">
    <Color Level="ERROR" ForeColor="Red"/>
    <Color Level="DEBUG" ForeColor="Green"/>
    <Color Level="INFOR" ForeColor="White"/>
    <Pattern Value="{0:yyyy/MM/dd H:mm:ss}: [{1}] {2}"/>
</Appender>
<Root>
    <MinLevel Value="VERBO" />
    <AppenderRef Ref="ColoredConsoleAppender" />
    <AppenderRef Ref="FileAppender" />
</Root>

Example Code (C#)

Logging.Instance.LoadConfig();
// or load config with specific file
// Logging.Instance.LoadConfig("LogConfig.xml");
Logging.Logger.Instance.SetLogPath("New.log");
Logging.Logger.Instance.SetLogAppendTo(true);
// change the enable status of appender
Logging.Logger.Instance.EnableAppender("ColoredConsoleAppender", false);
Logging.Logger.Instance.Information("Information");
Logging.Logger.Instance.Debug("Debug");
Logging.Logger.Instance.Error("Error");

Example Code (C++)

Logger::Instance()->LoadConfig();
Logger::Instance()->SetLogPath("New.log");
Logger::Instance()->SetLogAppendTo(true);
// change the enable status of appender
Logger::Instance()->EnableAppender("ConsoleAppender", false);
Logger::Instance()->Information("Information");

Example Code (Python)

from Logger import Logger

logger = Logger()
logger.LoadConfig("LogConfig.xml")
logger.SetLogPath("New.log")
logger.SetLogAppendTo(True)
logger.EnableAppender("ColoredConsoleAppender", True)
logger.Information("Information")
logger.Debug("Debug")
logger.Error("Error")

Tools

  • SchemaValidate.py

Simple

  • /Simple

logger's People

Contributors

peitaosu avatar

Watchers

 avatar  avatar  avatar

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.