Logging¶
typedkafka.logging.LogContext
dataclass
¶
Structured context for Kafka log entries.
Fields that are None are omitted from log output.
Attributes:
| Name | Type | Description |
|---|---|---|
topic |
str | None
|
Topic name. |
partition |
int | None
|
Partition number. |
offset |
int | None
|
Message offset. |
key |
str | None
|
Message key. |
group_id |
str | None
|
Consumer group ID. |
client_id |
str | None
|
Client identifier. |
error |
str | None
|
Error description. |
extra |
dict[str, Any]
|
Additional key-value pairs. |
to_dict()
¶
Return non-None fields as a dictionary.
typedkafka.logging.KafkaLogger
¶
Structured logger for Kafka operations.
Wraps a stdlib logging.Logger and formats log entries as
event key=value key=value strings. When no logger is provided,
all methods are silent no-ops.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
logger
|
Logger | None
|
A stdlib logger instance. |
None
|
default_context
|
LogContext | None
|
Default context merged into every log entry. |
None
|
Examples:
>>> import logging
>>> kafka_logger = KafkaLogger(logging.getLogger("kafka"))
>>> producer = KafkaProducer(config, logger=kafka_logger)
>>> # Sends are now logged automatically
log_commit(topic=None, partition=None, offset=None, **extra)
¶
Log an offset commit event.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
topic
|
str | None
|
Topic name. |
None
|
partition
|
int | None
|
Partition number. |
None
|
offset
|
int | None
|
Message offset. |
None
|
**extra
|
Any
|
Additional context fields. |
{}
|
log_error(error, topic=None, partition=None, **extra)
¶
Log an error event.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
error
|
str
|
Error description. |
required |
topic
|
str | None
|
Topic name. |
None
|
partition
|
int | None
|
Partition number. |
None
|
**extra
|
Any
|
Additional context fields. |
{}
|
log_poll(topic=None, partition=None, offset=None, **extra)
¶
Log a consumer poll event.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
topic
|
str | None
|
Topic name. |
None
|
partition
|
int | None
|
Partition number. |
None
|
offset
|
int | None
|
Message offset. |
None
|
**extra
|
Any
|
Additional context fields. |
{}
|
log_rebalance(event, partitions=None, **extra)
¶
Log a consumer rebalance event.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
event
|
str
|
Rebalance type (assign, revoke, lost). |
required |
partitions
|
list[Any] | None
|
Affected partitions. |
None
|
**extra
|
Any
|
Additional context fields. |
{}
|
log_send(topic, key=None, partition=None, **extra)
¶
Log a producer send event.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
topic
|
str
|
Topic name. |
required |
key
|
str | None
|
Message key. |
None
|
partition
|
int | None
|
Partition number. |
None
|
**extra
|
Any
|
Additional context fields. |
{}
|
log_transaction(event, **extra)
¶
Log a transaction event.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
event
|
str
|
Transaction action (begin, commit, abort). |
required |
**extra
|
Any
|
Additional context fields. |
{}
|