/Logges

An alternative logging tool working on Python, also have different functions.

Primary LanguagePythonMIT LicenseMIT

LLLLLLLLLLL                                                                                            SSSSSSSSSSSSSSS
L:::::::::L                                                                                          SS:::::::::::::::S
L:::::::::L                                                                                         S:::::SSSSSS::::::S
LL:::::::LL                                                                                         S:::::S     SSSSSSS
  L:::::L                  ooooooooooo      ggggggggg   ggggg   ggggggggg   ggggg    eeeeeeeeeeee   S:::::S
  L:::::L                oo:::::::::::oo   g:::::::::ggg::::g  g:::::::::ggg::::g  ee::::::::::::ee S:::::S
  L:::::L               o:::::::::::::::o g:::::::::::::::::g g:::::::::::::::::g e::::::eeeee:::::eeS::::SSSS
  L:::::L               o:::::ooooo:::::og::::::ggggg::::::ggg::::::ggggg::::::gge::::::e     e:::::e SS::::::SSSSS
  L:::::L               o::::o     o::::og:::::g     g:::::g g:::::g     g:::::g e:::::::eeeee::::::e   SSS::::::::SS
  L:::::L               o::::o     o::::og:::::g     g:::::g g:::::g     g:::::g e:::::::::::::::::e       SSSSSS::::S
  L:::::L               o::::o     o::::og:::::g     g:::::g g:::::g     g:::::g e::::::eeeeeeeeeee             S:::::S
  L:::::L         LLLLLLo::::o     o::::og::::::g    g:::::g g::::::g    g:::::g e:::::::e                      S:::::S
LL:::::::LLLLLLLLL:::::Lo:::::ooooo:::::og:::::::ggggg:::::g g:::::::ggggg:::::g e::::::::e         SSSSSSS     S:::::S
L::::::::::::::::::::::Lo:::::::::::::::o g::::::::::::::::g  g::::::::::::::::g  e::::::::eeeeeeee S::::::SSSSSS:::::S
L::::::::::::::::::::::L oo:::::::::::oo   gg::::::::::::::g   gg::::::::::::::g   ee:::::::::::::e S:::::::::::::::SS
LLLLLLLLLLLLLLLLLLLLLLLL   ooooooooooo       gggggggg::::::g     gggggggg::::::g     eeeeeeeeeeeeee  SSSSSSSSSSSSSSS
                                                     g:::::g             g:::::g
                                         gggggg      g:::::g gggggg      g:::::g
                                         g:::::gg   gg:::::g g:::::gg   gg:::::g
                                          g::::::ggg:::::::g  g::::::ggg:::::::g
                                           gg:::::::::::::g    gg:::::::::::::g
                                             ggg::::::ggg        ggg::::::ggg
                                                gggggg              gggggg

PyPI - Downloads Scrutinizer code quality (GitHub/Bitbucket) GitHub code size in bytes Scrutinizer coverage (GitHub/BitBucket) GitHub GitHub forks GitHub Repo stars PyPI

About πŸ”ˆ

If you want a different approach than following your logs by typing print between codes or do not want to use logging library, here is Logges.

With Logges, you can follow your logs that you want to follow, whether you print them on the screen or not, and automate your log outputs by making these log outputs as LOG, PDF, MD or Zipped file.

Installation πŸ“‚

You can install Logges with typing pip install Logges on Python package managers/terminal. (Docker file will be here as soon as possible)

Usage πŸ“

Library πŸ“•

console image

  • πŸ“Œ Import package as from Logges import Logges
  • πŸ“Œ Firstly, Optional parameter is Logges.setup(). You can name your log file with logname parameter and print logs with status parameters (Default is Logges.LogStatus.ERROR).
  • πŸ“Œ We have 5 log type under LogStatus enums;
    • πŸ’Ž LogStatus.DEBUG
    • πŸ’Ž LogStatus.INFO
    • πŸ’Ž LogStatus.WARNING
    • πŸ’Ž LogStatus.ERROR
    • πŸ’Ž LogStatus.CRITICAL
  • πŸ“Œ Before add logs, you can ignore specific files and directories on your logs with using ignore_files() method.
  • πŸ“Œ You can check in entered logs messages with in_log() method with keyword parameter. It returns True or False if keywords in log messages.
  • πŸ“Œ Finally, you can add your logs with log() method with specific parameters.
    • βž• msg parameter defines your messages, alsa could be a variable which can be print.
    • βž• status parameter defines your log type. Default is DEBUG but you can change it with LogStatus enums.
    • βž• print_log default is False, if your status is equal or upper than status of setup parameter, it will also print if you set it False.
  • πŸ“Œ Also you can export your logs as log, md, pdf or zip files, which is exported as md, pdf, log.

Check our example scripts to understand how to use.

CLI πŸ“‹

console image

  • πŸ“Œ Also we have an CLI tool about log files.
  • πŸ“Œ logges is main command for listing, showing, searching operations.
  • πŸ“Œ logges list has 2 optional parameter for listing log files.
    • πŸ’Ž --max-date is filtering logs with maximum date.
    • πŸ’Ž --min-date is filtering logs with minimum date.
    • πŸ’Ž Please enter your date format as YYYY-MM-DD
  • πŸ“Œ logges show is showing entered filename.
    • πŸ’Ž -f/--file parameter is defines the log filename which is showing on list command or local file.
    • πŸ’Ž --local_file parameter default is False, if you want to see your local log file, you need to set this parameter True.
  • πŸ“Œ logges search is filtering command in all log files.
    • πŸ’Ž --max-date is filtering logs with maximum date.
    • πŸ’Ž --min-date is filtering logs with minimum date.
    • πŸ’Ž -sen/--sentences is REQUIRED parameter for filtering. It search keywords (seperated with ,) in log messages.
    • πŸ’Ž -fun/--functions is filtering functions on logs.
    • πŸ’Ž -sta/--status is filtering status on log.
    • πŸ’Ž -fi/--files is filtering executed files in log file.
    • πŸ’Ž -e/--export if you want to export result, set this parameter True.
    • πŸ’Ž --export_name, if you set --export=True, it defines exported file name.

Encountered Bugs πŸ‘»

If you find any bug or want to a feature nice-to-have, do not hesitate open an issue page.

Contact 🎩

Serkan UYSAL - Γ–zkan UYSAL