# Logbook

# Welcome to Logbook

Logbook is a logging system for Python that replaces the standard library’s logging module. It was designed with both complex and simple applications in mind and the idea to make logging fun:

    >>> from logbook import Logger, StreamHandler
    >>> import sys
    >>> StreamHandler(sys.stdout).push_application()
    >>> log = Logger('Logbook')
    >>> log.info('Hello, World!')
    [2015-10-05 18:55:56.937141] INFO: Logbook: Hello, World!

What makes it fun? What about getting log messages on your phone or desktop notification system? Logbook can do that.

Feedback is appreciated. The docs here only show a tiny, tiny feature set and can be incomplete. We will have better docs soon, but until then we hope this gives a sneak peek about how cool Logbook is. If you want more, have a look at the comprehensive suite of tests.

## Documentation

- What does it do?
  - Core Features
  - Advantages over Logging
  - Cooperation
  - It should be Fun
  - Logbook in a Nutshell
  - Roadmap
- Quickstart
  - Handlers
  - Registering Handlers
  - Record Processors
  - Configuring the Logging Format
- Common Logbook Setups
  - Desktop Application Setup
  - Web Application Setup
  - Deeply Nested Setups
  - Distributed Logging
  - Redirecting Single Loggers
- Stacks in Logbook
  - General Stack Management
  - Handlers
  - Processor
  - Flags
- Performance Tuning
  - Debug-Only Logging
  - Keep the Fingers Crossed
  - Keep the Stack Static
  - Disable Introspection
- Logbook in Libraries
  - Mocking Logbook
  - Best Practices
  - Example Setup
  - Multiple Logger Example Setup
  - Debug Loggers
- Unittesting Support
  - Basic Setup
  - Test Handler Interface
  - Probe Log Records
- Logging to Tickets
  - How does it work?
  - Why should I use it?
  - Common Setups
- Logging Compatibility
  - Basic Setup
  - Advanced Setup
  - Reverse Redirects
- API Documentation
  - Core Interface
  - Handlers
  - Utilities
  - Queue Support
  - Ticketing Support
  - The More Module
  - The Notifiers Module
  - Compatibility
  - Internal API
- The Design Explained
  - Dispatchers and Channels
  - The Log Record Container
- Design Principles
  - No Logger Registry
  - Context Sensitive Handler Stack
  - No Custom Log Levels
  - Injecting Context-Sensitive Information
  - Logging Compatibility
- Cookbook
  - Filtering Records Based on Extra Info
- Logbook Changelog
  - Version 1.7.0
  - Version 1.6.0
  - Version 1.5.3
  - Version 1.5.2
  - Version 1.5.1
  - Version 1.4.3
  - Version 1.4.2
  - Version 1.4.1
  - Version 1.4.0
  - Version 1.3.0
  - Version 1.2.0
  - Version 1.1.0
  - Version 1.0.1
  - VERSION 1.0.0
  - Version 0.12.0
  - Version 0.11.3
  - Version 0.11.2
  - Version 0.11.0
  - Version 0.10.1
  - Version 0.10.0
  - Version 0.9.1
  - Version 0.9.0
  - Version 0.8.1
  - Version 0.8.0
  - Version 0.7.0
  - Version 0.6.0
  - Version 0.5.0
  - Version 0.4.2
  - Version 0.4.1
  - Version 0.4
  - Version 0.3
  - Version 0.2.1
  - Version 0.2
  - Version 0.1

## Project Information

- Download from PyPI

- GitHub repository

- Mailing list