Bases: MetricsSettingsProvider['IncomingMessage', RabbitPublishCommand]
Source code in faststream/rabbit/prometheus/provider.py
| def __init__(self) -> None:
self.messaging_system = "rabbitmq"
|
messaging_system
instance-attribute
messaging_system = 'rabbitmq'
get_consume_attrs_from_message
get_consume_attrs_from_message(msg)
Source code in faststream/rabbit/prometheus/provider.py
| def get_consume_attrs_from_message(
self,
msg: "StreamMessage[IncomingMessage]",
) -> ConsumeAttrs:
exchange = msg.raw_message.exchange or "default"
routing_key = msg.raw_message.routing_key
return {
"destination_name": f"{exchange}.{routing_key}",
"message_size": len(msg.body),
"messages_count": 1,
}
|
get_publish_destination_name_from_cmd
get_publish_destination_name_from_cmd(cmd)
Source code in faststream/rabbit/prometheus/provider.py
| def get_publish_destination_name_from_cmd(
self,
cmd: RabbitPublishCommand,
) -> str:
return f"{cmd.exchange.name or 'default'}.{cmd.destination}"
|