Best logging support into Nette Framework (@nette)

Overview

Website 🚀 contributte.org | Contact 👨🏻‍💻 f3l1x.io | Twitter 🐦 @contributte

Usage

To install the latest version of contributte/monolog use Composer.

composer require contributte/monolog

Documentation

For details on how to use this package, check out our documentation.

Versions

State Version Branch Nette PHP
dev ^0.6 master 3.0+ >=7.2
stable ^0.5 master 3.0+ >=7.2
stable ^0.2 master 2.4 >=7.1

Development

See how to contribute to this package.

This package is currently maintaining by these authors.


Consider to support contributte development team. Also thank you for using this package.

Comments
  • Odkaz na composer v read-me je fishing

    Odkaz na composer v read-me je fishing

    Nevím jestli to je schválně, ale v readme na hlavní straně je odkaz na composer a jedná se o špatný odkaz, který vede na stránku .com místo .org. Tento odkaz je docela propracovaný fishing, pokud to není záměr tak bych navrhoval odkaz opravit :)

    opened by VojtechBuba 5
  • Nette3

    Nette3

    This change was already merged. There is no such commit in the current master, so I think that you force-pushed or whatever, so here is the change once again.

    opened by solcik 4
  • How to configure handler for Symfony Console

    How to configure handler for Symfony Console

    Class Symfony\Component\Console\Logger\ConsoleLogger extends from Psr\Log\AbstractLogger and wants OutputInterface in constructor. Because of that, It is impossible to add console channel.

    Is there any solution? If yes, can you add example to documentation?

    opened by foxycode 4
  • TracyProcessor

    TracyProcessor

    Get exception from context and create tracy bluescreen for it.

    Some kind of storage would be nice, so user is not forced to use local filesystem. (same for #3)

    opened by mabar 4
  • Is there an easy way to set up Monolog Formatter? (escaping % in config)

    Is there an easy way to set up Monolog Formatter? (escaping % in config)

    I see no mention of it in the docs. I tried setting it in the config like handlers and processors are set-up, but seems like formatters is not an option. Is there some easy way to change the default formatter to the NormalizerFormatter?

    Nevermind, figured it out in config.neon, but I came across a different problem.

    When I want to set the formatter parameters, there seems to be no way of escaping the % symbol. The Nette docs says to put another % before it to escape, but it still tries to parse it as a parameter.

    setFormatter(Monolog\Formatter\LineFormatter('%%[datetime]%% %%message%% %%context%%', 'Y-m-d H:i:s', false, true)
    

    Results in:

    Nette\InvalidArgumentException
    Missing parameter 'datetime'.
    
    opened by matronator 2
  • Processor for specific handler only

    Processor for specific handler only

    Hi!

    We need add processor for specific handler only.

    In our case it is Sentry handler and processor specific only for it, not suitable for other handlers.

    I was inspired by https://symfony.com/doc/current/logging/processors.html#registering-processors-per-handler

    opened by JanMikes 2
  • Hook: Tracy

    Hook: Tracy

    Related: #4, #6

    Only one from/to needs to be enabled and the other disabled. If both are enabled (current default settings), then you get into recursion.

    Screenshot 2019-05-29 17 09 12
    opened by solcik 2
  • Replace TracyAdapter with PsrToTracyLoggerAdapter

    Replace TracyAdapter with PsrToTracyLoggerAdapter

    Tracy 2.6.0 ships with built-in PsrToTracyLoggerAdapter which can be used instead of TracyAdapter. The TracyAdapter is a modified copy of the built-in PsrToTracyLoggerAdapter which extends Logger instead of just implementing ILogger. This is problematic, because it means that while Tracy\Debugger::log(...) is logged by Tracy, invoking Psr\Log\LoggerInterface::log(...) is not.

    The correct approach for people who want to keep the behavior of Tracy\Logger (i.e. generating bluescreens, sending mails and writing to log files on disk), is instead configure monolog to use Tracy\Logger as one of its handlers.

    monolog:
        channel:
            default:
                handlers:
                    - Monolog\Handler\PsrHandler(
                        Tracy\Bridges\Psr\TracyToPsrLoggerAdapter(
                            Tracy\Logger(...)
                        )
                    )
    

    This will result in Tracy\Logger being used even when Psr\Log\LoggerInterface::log(...) is called.

    opened by JanTvrdik 2
  • Lazy Tracy adapter and LoggerHolder

    Lazy Tracy adapter and LoggerHolder

    Tracy adapter must be configured in initialize() method of DIC. As a side effect is logger and all its handlers and processors initialized even if it is not used.

    Also LoggerHolder is affected by that.

    Tracy\Debugger::setLogger($this->getService('monolog.tracyAdapter')); Contributte\Monolog\LoggerHolder::setLogger($this->getByType('Monolog\Logger'));

    opened by mabar 0
Releases(v0.5.1)
  • v0.5.1(Oct 28, 2022)

    Bumped! 🇧🇱

    Diff: https://github.com/contributte/monolog/compare/v0.5.0...v0.5.1

    Changes:

    • Composer: update dependencies [d384d787b92f18fc4869106676820fb8e1b6ebfb] (@Roman3349)

    Maintenance:

    • QA: update ruleset [d1599c0a74d5849a5d819cd66f58f7941bbf8c1c] (@f3l1x)
    • PHPStan: update [4503607d2dc2a296ab34ced7ca345eb35ae811aa] (@f3l1x)
    • Makefile: update [b8b28a756d12e4a9efd9294b9c91bd84f31b8a12] (@f3l1x)
    • Composer: upgrade deps [7f5fa67f67721574f996161f84a91d808b1f4677] (@f3l1x)
    • EditorConfig: update [4b8b6bdca243af6ce5235df3fdf9a105521281ee] (@f3l1x)
    • Tests: phpunit -> nette/tester [2aabbe833251cbb2e219bf338e286847b88f9507] (@f3l1x)
    • CI: update [abcccd091e88e302fdb234880f725688efe9cc1e] (@f3l1x)
    • QA: typo [80936d9bc8f9377f9b763c3b9e81d18803e16251] (@f3l1x)
    • Kodiakbot [d993646d06639fd7c7bffbc5f28cd220eca33d52] (@f3l1x)
    • Composer: bump contributte/di version [96d202d4da60e599b22b5f70ff40224ae81915ba] (@f3l1x)
    • Repo: sync github actions, makefile [b521d0329faa4e6ea3dc7e97eff9de4deb09e748] (@f3l1x)
    • Unify syntax in readmes (#23) [721c53052c38893b4469ab148a4c18bc5d583574] (@petrparolek)
    • Codestyle: improvements (#24) [c7f01cfecfccdf7f08d3b18d12649d732a537ff3] (@petrparolek)
    • Fixed composer link [978ff8c41441e14f1252dd5756a34c690a389bfb] (@petrparolek)
    • GitHub Actions: use re-usable workflows (@Roman3349)
    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(Dec 10, 2020)

  • v0.4.1(Jan 5, 2020)

    Bumped! 👨‍👦

    Diff: https://github.com/contributte/monolog/compare/v0.4.0...v0.4.1

    Changes:

    • Allows nette/utils ~3.1.0 https://github.com/contributte/monolog/commit/44b1f9e84f5ccd2c43e010f07d78226baa54fe15
    • LoggerHolder constructor is final https://github.com/contributte/monolog/commit/44b1f9e84f5ccd2c43e010f07d78226baa54fe15
    Source code(tar.gz)
    Source code(zip)
  • v0.4.0(Sep 19, 2019)

    Bumped! 👨‍👧

    Diff: https://github.com/contributte/monolog/compare/v0.3.0...v0.4.0

    Changes:

    • Monolog 2.0 https://github.com/contributte/monolog/commit/c5a41c05982f0ea8edfd0f14b02d281930071015
    • Flexible services syntax https://github.com/contributte/monolog/commit/7790027c25e1aafc9551ad0959b3cfcaca9c9d1f
    Source code(tar.gz)
    Source code(zip)
  • v0.3.0(May 31, 2019)

    Bumped! 🪢

    Diff: https://github.com/contributte/monolog/compare/v0.2.2...v0.3.0

    Changes:

    • Supports Nette 3 https://github.com/contributte/monolog/commit/53e99b7bb7ddf3a533ab571f5d306baf35e44542
    • PHP ^7.2
    Source code(tar.gz)
    Source code(zip)
  • v0.2.2(May 30, 2019)

    Bumped! 🐽

    Diff: https://github.com/contributte/monolog/compare/v0.2.1...v0.2.2

    Changes:

    • Tracy\ILogger could be autowired
    • Prevent looping of hook from Tracy in itself
    Source code(tar.gz)
    Source code(zip)
  • v0.2.1(May 29, 2019)

  • v0.2.0(May 29, 2019)

    Bumped! 🐰

    Diff: https://github.com/contributte/monolog/compare/v0.1.0...v0.2.0

    Changes:

    • Instead of Monolog is used PSR LoggerInterface in typehints. https://github.com/contributte/monolog/commit/d621f62a11f1de89766f78c1ae6b4b64f6a0f7ba
    • Lazy LoggerHolder https://github.com/contributte/monolog/commit/57988c7322a307c64fbf5679aee1dfa936f219e2
    • Lazy-only LoggerManager, dropped ILoggerManager interface https://github.com/contributte/monolog/commit/9eae477f8489bf249681d76d2f4d74bdffbca1c5
    • Removed Doctrine SqlLogger (available in nettrine/dbal) https://github.com/contributte/monolog/commit/43f3abf047c0221dbdfd43f7c77e3926c3f85878
    • Tracy hook now works in both directions (logging through Tracy into Monolog and through Monolog to Tracy) https://github.com/contributte/monolog/commit/9aed0c2b666f01c34de9b83c588f506e5bbbdb99
    • Tracy adapter of Monolog loads Monolog lazy https://github.com/contributte/monolog/commit/2ae8e6c128a87af435a497e973c1c2ab440da1df
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0(Oct 16, 2018)

Owner
Contributte
First::class extensions for Nette Framework
Contributte
Bedrock is a modern WordPress stack that helps you get started with the best development tools and project structure.

WordPress boilerplate with modern development tools, easier configuration, and an improved folder structure

Roots 5.7k Jan 9, 2023
GetSimple CMS - a flatfile CMS that works fast and efficient and has the best UI around, it is written in PHP

GetSimple CMS is a flatfile CMS that works fast and efficient and has the best UI around, it is written in PHP.

null 370 Dec 30, 2022
Divide / Split your WordPress Blog visitors into 4 links by using Re-skinning URL splitter

Re-skinning URL splitter Tool Divide / Split your Wordpress Blog visitors into 4 links by using Re-skinning URL splitter Re-skinning URL Splitter Feat

Mohammed cha 72 Nov 30, 2022
Intuitive Website Styling integrated into WordPress' Customizer

Customify - Intuitive Website Styling for WordPress With Customify, developers can easily create advanced theme-specific options inside the WordPress

Pixelgrade 28 Oct 6, 2022
Add subtitles into your WordPress posts, pages, custom post types, and themes. No coding required.

Add subtitles into your WordPress posts, pages, custom post types, and themes. No coding required. Simply activate Subtitles and you're ready to go.

We Cobble 117 Dec 31, 2022
Plugin Vite is the conduit between Craft CMS plugins and Vite, with manifest.json & HMR support

Plugin Vite Related Articles: Vite.js Next Generation Frontend Tooling + Craft CMS A Vite Buildchain for Craft CMS Plugins Requirements Craft CMS 3.0.

nystudio107 8 Dec 30, 2022
MuOnline game support for Azuriom CMS.

MuOnline game plugin for Azuriom CMS Installation Install automatically: Install Azuriom CMS and at installation process select MuOnline as game and d

null 3 Nov 17, 2021
Winter CMS support for opcache preloading

Winter Opcache Preload Preloading allows you to read php files into memory at server startup which helps boost performance. The tradeoff for this is t

Jack Wilkinson 4 Dec 20, 2022
WinterCMS plugin adding support for streaming html5 videos

Winter MediaStream Intro This plugin adds streaming support for html5 videos. Installation composer install jaxwilko/wn-mediastream-plugin Usage Once

Jack Wilkinson 4 Dec 20, 2022
CMS and high level framework created with Phalcon framework

KikCMS This video will show you the general UX used for the KikCMS and DataTables created inside the CMS

Kaz 51 Oct 7, 2022
Self-hosted CMS platform based on the Laravel PHP Framework.

October is a Content Management System (CMS) and web platform whose sole purpose is to make your development workflow simple again. It was born out of

October CMS 10.8k Jan 4, 2023
PHPDish is a powerful forum system written in PHP. It is based on the Symfony PHP Framework.

PHPDish 是一个基于Symfony框架开发的内容社区系统;得益于大量的前端以及后端的第三方类库的使用使得PHPDish有着高质量的代码,敏捷实现; 你可以使用composer或者直接下载本仓库进行程序的安装,注意切换到tag。 PHPDish 开发手册以及详细安装文档 Requirements

PHPDISH 227 Dec 8, 2022
Borgert is a CMS Open Source created with Laravel Framework 5.6

A simple CMS to start projects in Laravel containing some modules. Blog, Pages, Products, Mailbox, Image Gallery, Log Viewer and Users. Frontend: Blog

Borgert Inc. 300 Dec 30, 2022
Elefant, the refreshingly simple PHP CMS and web framework.

Elefant is a refreshingly simple PHP content management system and web framework. Elefant is a fast, lean tool for building everything from simple websites to complete web applications.

Aband*nthecar 200 Dec 22, 2022
A Simple and Lightweight WordPress Option Framework for Themes and Plugins

A Simple and Lightweight WordPress Option Framework for Themes and Plugins. Built in Object Oriented Programming paradigm with high number of custom fields and tons of options. Allows you to bring custom admin, metabox, taxonomy and customize settings to all of your pages, posts and categories. It's highly modern and advanced framework.

Codestar 241 Dec 23, 2022
Core framework that implements the functionality of the Sulu content management system

Sulu is a highly extensible open-source PHP content management system based on the Symfony framework. Sulu is developed to deliver robust multi-lingua

Sulu CMS 921 Dec 28, 2022
Free, open-source, self-hosted CMS platform based on the Laravel PHP Framework.

Winter is a Content Management System (CMS) and web platform whose sole purpose is to make your development workflow simple again. It was born out of

Winter CMS 1.1k Jan 3, 2023
Gitamin is an open source git repository management software built with the Laravel PHP Framework.

Gitamin(pronounced /ˈgɪtəmɪn/, inspired by Vitamin) is an open source git repository management software built with the Laravel PHP Framework.

Gitamin 347 Sep 20, 2022
PHPDish is a powerful forum system written in PHP. It is based on the Symfony PHP Framework.

PHPDish 是一个基于Symfony框架开发的内容社区系统;得益于大量的前端以及后端的第三方类库的使用使得PHPDish有着高质量的代码,敏捷实现; 你可以使用composer或者直接下载本仓库进行程序的安装,注意切换到tag。

PHPDISH 227 Dec 8, 2022