Welcome to Influx Logger
Influx Logger is a powerful, flexible logging library designed to facilitate seamless logging within your applications. It integrates well with InfluxDB to store and analyze log data efficiently. This comprehensive guide will introduce you to Influx Logger and provide you with numerous API explanations and code snippets to get you started.
Getting Started
First, install the influx-logger library:
pip install influx-logger
Initializing the Logger
Start by initializing the Influx Logger with the necessary configurations:
from influx_logger import InfluxLogger
logger = InfluxLogger(
influx_url='http://localhost:8086',
token='your-token',
org='your-org',
bucket='your-bucket'
)
Logging Messages
Log messages with varying severity levels:
logger.info('This is an info message')
logger.warning('This is a warning message')
logger.error('This is an error message')
Logging with Context
Add context to your log messages for better traceability:
logger.info('User logged in', user_id=12345, ip_address='192.168.1.1')
Batch Logging
Use batch logging to improve performance:
with logger.batch():
logger.info('Batch message 1')
logger.info('Batch message 2')
Custom Log Levels
Create and use custom log levels:
from influx_logger import CustomLogLevel
logger.add_custom_level(CustomLogLevel('CUSTOM_LEVEL', 25))
logger.log('CUSTOM_LEVEL', 'This is a custom log message')
Using Influx Formatter
Implement custom formatting for logs:
from influx_logger import InfluxFormatter
formatter = InfluxFormatter(fmt='{level} - {message}', datefmt='%Y-%m-%d %H:%M:%S')
logger.setFormatter(formatter)
Integrating with an Application
Here’s an example of how to integrate Influx Logger into a simple application:
from flask import Flask
from influx_logger import InfluxLogger
app = Flask(__name__)
logger = InfluxLogger(
influx_url='http://localhost:8086',
token='your-token',
org='your-org',
bucket='your-bucket'
)
@app.route('/')
def home():
logger.info('Home page accessed')
return 'Welcome to the Home Page'
@app.route('/login')
def login():
logger.info('Login page accessed', user_id=12345)
return 'Login Page'
if __name__ == '__main__':
app.run(debug=True)
By following these examples, you can effectively implement and leverage Influx Logger for your logging requirements, ensuring robust log management and analysis for your applications.
Happy Logging!
Hash: 29cdcaebb3f1fc97b88aaa0b8efaee8a166e73fcc6658c0943ca90e2e566aa3a