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.2.0
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.2.0.tar.gz | 9.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fk_util_tools-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 30.6 kB
Release files / fk_util_tools-0.2.0.tar.gz
| Download URL | fk_util_tools-0.2.0.tar.gz |
|---|---|
| Size | 9.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
920e41761016a144d5227b887333236f1a035777e49ce4b17647f6e8d4cd3791
|
|
BLAKE2b-256 checksum How to use checksums |
23a67ee8e87ab2d988c0a714d24b1baa4aa6e1197554441523eaa0f06438a315
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.4 CPython/3.13.7 Linux/6.11.0-1018-azure
|
Release files / fk_util_tools-0.2.0-py3-none-any.whl
| Download URL | fk_util_tools-0.2.0-py3-none-any.whl |
|---|---|
| Size | 20.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cc65778f47f6af01cd6816afcfd88eac891ecd30bbc10b5f66076688d4456b25
|
|
BLAKE2b-256 checksum How to use checksums |
8ee137be92e55b9978253baded4732aa55ca86bfd5c6de62157d84e4dfda14b3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.4 CPython/3.13.7 Linux/6.11.0-1018-azure
|