Giter VIP home page Giter VIP logo

logn's Introduction

GitHub tag (latest by date) GitHub

About Logn

Logn :/logen/ is a simple log management library for go app ツ, with several features provided such as :

  • Generate log by day
  • Generate log by type
  • Report log type Warning / Error to telegram via bot
  • Zipping log data every one month
  • Deleting old log directory

Logn Tree

go-app
│   main
│
├───log
│    └───2020
│        └───12
│            ├───01
│            │   info.log
│            │   warning.log
│            │   error.log
│            ├───02
│            │   info.log
│            │   warning.log
│            │   error.log
│
└───log_zip
    ├───2019
    │   log_12_2019.zip
    ├───2020
    │   log_01_2020.zip

Installation

Use the package manager go get to install this package.

go get -u github.com/ibnumardini/logn

Configuration

{
  "logn_is_active": true,
  "log": {
    "logn_dir": "log/",
    "logn_default_loc": "Asia/Jakarta",
    "logn_print_console": true
  },
  "tg": {
    "logn_tg_send": false,
    "logn_app_name": "Logn-App LOG",
    "logn_tg_token": "1416xxxxx:AAF3VOBjt7rIeO4tUL_dHxG0qxxxxxxxxx",
    "logn_tg_chat_id": "-4947xxxxx"
  },
  "zip": {
    "logn_is_zipped": false,
    "logn_dir_zip": "log_zip/",
    "logn_del_old_dir": false
  }
}

Config description

  • logn_is_active used to actived or deactived logn package

log

  • logn_dir used for set default log directory name
  • logn_default_loc used for set default timezone
  • logn_print_console used to print log at console

telegram

  • logn_tg_send used to actived or deactived report warning/error log to telegram
  • logn_app_name used to set title in report telegram message
  • logn_tg_token used for telegram bot token
  • logn_tg_chat_id used for set where bot send report message

zip

  • logn_is_zipped used to actived or deactived automate zipped log in one month
  • logn_dir_zip used for set default log zip directory name
  • logn_del_old_dir used to set automate deleting old zip directory after zipped

Usage

logn.InfoLog("hello world")
logn.WarningLog(fmt.Sprintf("%s\n", warningInfo))
logn.ErrorLog(fmt.Sprintln("error message!"))

Usage description

  • logn.InfoLog() used to make log type info
  • logn.WarningLog() used to make log type warning
  • logn.ErrorLog() used to make log type error

parameter

  • if you have complex string, you can format first using fmt.Sprintf() or fmt.Sprintln() before input in the parameters

Zipping log using cron

  • set logn.CronZip(1)at your init func
  • set like this ./app logn_zip_run when run your app

parameter

  • fill in the parameter with the position of the argument according to what you set, param type is int

Contributing

Let's build this Logn library to make it even better, see contributing guide here

License

Logn is under the MIT License

logn's People

Contributors

ibnumardini avatar

Watchers

James Cloos 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.