• Stars
    star
    22
  • Rank 1,048,934 (Top 21 %)
  • Language
    Crystal
  • License
    MIT License
  • Created over 7 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Katip is JSONBase Logger for Crystal

katip

Katip is Logger for Crystal

Installation

Add this to your application's shard.yml:

dependencies:
  katip:
    github: guvencenanguvenal/katip

Usage

require "katip"

Create your logger variable and configure it.

logger = Katip::Logger.new

logger.configure do |config|
	config.loglevel = Katip::LogLevel::DEBUG
	config.logclassification = Katip::LogClassification::DATE_DAY
	config.path = "src/katip/logfiles"
	
	#### if you want to fill project's information
	config.info.description = "This is project description."
	config.info.project = "Module or project name."
	config.info.version = VERSION 	# project version
end

And basic log it!

logger.debug("Debug mode is on!")

logger.info("Information! This is log.")

logger.warn("Warning! Please control your code.")

logger.error("Error! Please fix and re-compile it!")

logger.fatal("Fatal! OH NO!")

if you want log detail, you can use this methods.

logger.debug("Debug mode is on!", self, YourExceptionName)

logger.info("Information! This is log.", self, YourExceptionName)

logger.warn("Warning! Please control your code.", self, YourExceptionName)

logger.error("Error! Please fix and re-compile it!", self, YourExceptionName)

logger.fatal("Fatal! OH NO!", self, YourExceptionName)

JSON Output

Please do not edit manual JSON log files!

{
    "katip":"0.1.0",
    "info":{
        "description":"",
        "project":"",
        "version":""},
    "errors":[
    	   { "date":"2017-05-07 00:24:57 +0300", 
            "class":"Class", 
            "message":"Debug mode is on!", 
            "exception_type":"Katip::NotSetException", 
            "exception_message":"Not Init", 
            "log_level":"DEBUG"
	    }
    ]
}

View Your Logs

You can use katipviewer.html to control your logs.

Open katipviewer.html on local machine.

Choose your log json file.

Click Read JSON Log button.

Contributing

  1. Fork it ( https://github.com/guvencenanguvenal/katip/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors