[feat] add observability runtime
This commit is contained in:
parent
cb4560db5c
commit
741e63e978
5 changed files with 335 additions and 0 deletions
54
adapter/observability/noop.py
Normal file
54
adapter/observability/noop.py
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
from types import TracebackType
|
||||
|
||||
from usecase.interface import Attrs, AttrValue
|
||||
|
||||
|
||||
class NoopMetrics:
|
||||
def increment(
|
||||
self,
|
||||
name: str,
|
||||
value: int = 1,
|
||||
attrs: Attrs | None = None,
|
||||
) -> None:
|
||||
return None
|
||||
|
||||
def record(
|
||||
self,
|
||||
name: str,
|
||||
value: float,
|
||||
attrs: Attrs | None = None,
|
||||
) -> None:
|
||||
return None
|
||||
|
||||
|
||||
class NoopSpan:
|
||||
def set_attribute(self, name: str, value: AttrValue) -> None:
|
||||
return None
|
||||
|
||||
def record_error(self, error: Exception) -> None:
|
||||
return None
|
||||
|
||||
|
||||
class NoopSpanContext:
|
||||
def __init__(self) -> None:
|
||||
self._span = NoopSpan()
|
||||
|
||||
def __enter__(self) -> NoopSpan:
|
||||
return self._span
|
||||
|
||||
def __exit__(
|
||||
self,
|
||||
exc_type: type[BaseException] | None,
|
||||
exc: BaseException | None,
|
||||
traceback: TracebackType | None,
|
||||
) -> bool | None:
|
||||
return None
|
||||
|
||||
|
||||
class NoopTracer:
|
||||
def start_span(
|
||||
self,
|
||||
name: str,
|
||||
attrs: Attrs | None = None,
|
||||
) -> NoopSpanContext:
|
||||
return NoopSpanContext()
|
||||
Loading…
Add table
Add a link
Reference in a new issue