Skip to content

Protobufstream handler

This page is auto-generated for HandlerType.Protobufstream.

Spec

  • Handler type: Protobufstream (protobufstream)
  • Handler class: StubERSKafkaLogHandler
  • Handler class FQDN: <run_path>.StubERSKafkaLogHandler
  • Factory: _build_erskafka_handler
  • Factory FQDN: daqpytools.logging.handlers._build_erskafka_handler
  • Fallback types: protobufstream
  • Summary: Build an ERS Kafka handler.

Factory API

daqpytools.logging.handlers._build_erskafka_handler(session_name, topic='ers_stream', address='monkafka.cern.ch:30092', ers_app_name=None, **_)

Build an ERS Kafka handler.

Parameters:

Name Type Description Default
session_name str

ERS session name used by the Kafka handler.

required
topic str

Kafka topic for ERS log messages.

'ers_stream'
address str

Kafka broker address in host:port format.

'monkafka.cern.ch:30092'
ers_app_name str | None

Optional ERS application name associated with messages.

None
**_ object

Additional forwarded keyword arguments. Ignored by this factory.

{}

Returns:

Type Description
Handler

A configured ERSKafkaLogHandler instance.

Raises:

Type Description
ERSInitError

If the handler cannot be initialized.

Source code in daqpytools/logging/handlers.py
def _build_erskafka_handler(
        session_name : str,
        topic : str = "ers_stream",
        address : str = "monkafka.cern.ch:30092",
        ers_app_name : str | None = None,
    **_: object) -> logging.Handler: 
    """Build an ERS Kafka handler.

    Args:
        session_name: ERS session name used by the Kafka handler.
        topic: Kafka topic for ERS log messages.
        address: Kafka broker address in ``host:port`` format.
        ers_app_name: Optional ERS application name associated with messages.
        **_: Additional forwarded keyword arguments. Ignored by this factory.

    Returns:
        A configured ``ERSKafkaLogHandler`` instance.

    Raises:
        ERSInitError: If the handler cannot be initialized.
    """
    try:
        return ERSKafkaLogHandler(
            session = session_name,
            kafka_address=address,
            kafka_topic = topic,
            app_name=ers_app_name
        )
    except Exception as err:
        raise ERSInitError(address, topic) from err