refactor(backend): external logging metrics, required mode, health checks
- Add external_logging_init_failures counter - Add external_log_required flag, raise if init fails and required - Health endpoint: add external_logging status check - Blocklist service: enrich with metadata fields, update import logic - Health check task: add runtime_state dependency, fix return typing - Metrics: add Histogram for request latencies - Frontend: align BlocklistImportLogSection props - Docs: update deployment guide, remove stale tasks Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -503,6 +503,19 @@ class BlocklistSourceHasLogsError(ConflictError):
|
||||
return {"source_id": self.source_id}
|
||||
|
||||
|
||||
class BlocklistSourceAlreadyExistsError(ConflictError):
|
||||
"""Raised when a blocklist source with the same URL already exists."""
|
||||
|
||||
error_code: str = "blocklist_source_already_exists"
|
||||
|
||||
def __init__(self, url: str) -> None:
|
||||
self.url = url
|
||||
super().__init__(f"Blocklist source with URL already exists: {url}")
|
||||
|
||||
def get_error_metadata(self) -> ErrorMetadata:
|
||||
return {"url": self.url}
|
||||
|
||||
|
||||
class HistoryNotFoundError(NotFoundError):
|
||||
"""Raised when no history is found for the given IP."""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user