fk-util-tools
Utility tools and shared functions for FK projects: centralized configuration, logging, middlewares, AWS integration, and OpenTelemetry tracing for Python web frameworks.
Installation
pip install fk-util-tools
Main Features
- Centralized Configuration:
Configclass for global settings management. - Cache: Redis integration.
- Environment Variables & AWS: Access to AWS Parameter Store and Secrets Manager.
- Custom Exceptions: HTTP error handling with custom codes.
- Structured Logging: Logging for FastAPI and other frameworks.
- Middlewares: SQL Printer, error handling, internationalization, and language support for Flask, Django, and FastAPI.
- OpenTelemetry Tracing: Instrumentation for Flask, Django, FastAPI, and AWS Lambda.
- Type Hints: PEP 561 support.
Usage Examples
Configuration
from fk_utils import SETTINGS
print(SETTINGS.ENV)
Structured Logging in FastAPI
from fastapi import FastAPI
from fk_utils.logging.fastapi.logging import setup_logging
app = FastAPI()
setup_logging(app)
SQL Printer Middleware
Flask
from flask import Flask
from fk_utils.middlewares.flask.sql_middleware import SqlPrintingMiddleware
app = Flask(__name__)
app.config['DEBUG'] = True
SqlPrintingMiddleware(app)
Django
from fk_utils.middlewares.django.sql_middleware import SqlPrintingMiddleware
SqlPrintingMiddleware()
FastAPI
from fk_utils.middlewares.fastapi.sql_middleware import SqlPrintingMiddleware
app = FastAPI()
SqlPrintingMiddleware(app)
OpenTelemetry Instrumentation
from fk_utils.traces.opentelemetry.fastapi.trace import instrument_app
app = FastAPI()
instrument_app(app)
AWS Lambda Instrumentation
from fk_utils.traces.opentelemetry.fastapi.aws_lambda.trace import instrument_app
app = FastAPI()
is_lambda = instrument_app(app, instrument_lambda=True)
print("Lambda instrumented:", is_lambda)
License
MIT
Release files for fk_util_tools 0.1.30
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fk_util_tools-0.1.30.tar.gz | 12.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fk_util_tools-0.1.30-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 39.2 kB
Release files / fk_util_tools-0.1.30.tar.gz
| Download URL | fk_util_tools-0.1.30.tar.gz |
|---|---|
| Size | 12.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c491bc2e746f0602f6030cdd107e7bd682a4d0776eaca69006f87a9e7f077995
|
|
BLAKE2b-256 checksum How to use checksums |
94e264f90191ec8e81a7d6e537263657cd4d52ffa17d95632a599215735bac57
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.4.1 CPython/3.13.14 Linux/6.17.0-1020-azure
|
Release files / fk_util_tools-0.1.30-py3-none-any.whl
| Download URL | fk_util_tools-0.1.30-py3-none-any.whl |
|---|---|
| Size | 26.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
66e216fe4ce9bf27590ec7b910b54f791d21337227a1da7447455f3d0f393b48
|
|
BLAKE2b-256 checksum How to use checksums |
6b0a49ffb15f4db7bd6c4138ffb70321bffbe4529df69f79427c27c6fbac34ff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.4.1 CPython/3.13.14 Linux/6.17.0-1020-azure
|