Skip to content
This repository was archived by the owner on Dec 5, 2025. It is now read-only.

Commit ff2583e

Browse files
[client] Align playbook and metric log / add util function in logger (#521)
1 parent 3274506 commit ff2583e

File tree

3 files changed

+14
-6
lines changed

3 files changed

+14
-6
lines changed

pycti/api/opencti_api_playbook.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ def __init__(self, api):
55
self.api = api
66

77
def playbook_step_execution(self, playbook: dict, bundle: str):
8-
self.api.app_logger.info("Executing playbook step", playbook["playbook_id"])
8+
self.api.app_logger.info(
9+
"Executing playbook step", {"playbook_id": playbook["playbook_id"]}
10+
)
911
query = """
1012
mutation PlaybookStepExecution($execution_id: ID!, $execution_start: DateTime!, $data_instance_id: ID!, $playbook_id: ID!, $previous_step_id: ID!, $step_id: ID!, $previous_bundle: String!, $bundle: String!) {
1113
playbookStepExecution(execution_id: $execution_id, execution_start: $execution_start, data_instance_id: $data_instance_id, playbook_id: $playbook_id, previous_step_id: $previous_step_id, step_id: $step_id, previous_bundle: $previous_bundle, bundle: $bundle)

pycti/connector/opencti_metric_handler.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55

66
class OpenCTIMetricHandler:
7-
def __init__(self, logger, activated: bool = False, port: int = 9095):
7+
def __init__(self, connector_logger, activated: bool = False, port: int = 9095):
88
"""
99
Init of OpenCTIMetricHandler class.
1010
@@ -16,9 +16,9 @@ def __init__(self, logger, activated: bool = False, port: int = 9095):
1616
Port for prometheus server.
1717
"""
1818
self.activated = activated
19-
self.logger = logger
19+
self.connector_logger = connector_logger
2020
if self.activated:
21-
logger.info(f"Exposing metrics on port {port}")
21+
self.connector_logger.info("Exposing metrics on port", {"port": port})
2222
start_http_server(port)
2323
self._metrics = {
2424
"bundle_send": Counter(
@@ -75,10 +75,10 @@ def _metric_exists(
7575
True if the metric exists and is of the correct type else False.
7676
"""
7777
if name not in self._metrics:
78-
self.logger.error("Metric does not exist.", {"name": name})
78+
self.connector_logger.error("Metric does not exist.", {"name": name})
7979
return False
8080
if not isinstance(self._metrics[name], expected_type):
81-
self.logger.error(
81+
self.connector_logger.error(
8282
"Metric not of expected type",
8383
{"name": name, "expected_type": expected_type},
8484
)

pycti/utils/opencti_logger.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,10 @@ def add_fields(self, log_record, record, message_dict):
1818

1919

2020
def logger(level, json_logging=True):
21+
# Exceptions
2122
logging.getLogger("urllib3").setLevel(logging.WARNING)
2223
logging.getLogger("pika").setLevel(logging.ERROR)
24+
# Exceptions
2325
if json_logging:
2426
log_handler = logging.StreamHandler()
2527
log_handler.setLevel(level)
@@ -37,6 +39,10 @@ def __init__(self, name):
3739
def prepare_meta(meta=None):
3840
return None if meta is None else {"attributes": meta}
3941

42+
@staticmethod
43+
def setup_logger_level(lib, log_level):
44+
logging.getLogger(lib).setLevel(log_level)
45+
4046
def debug(self, message, meta=None):
4147
self.local_logger.debug(message, extra=AppLogger.prepare_meta(meta))
4248

0 commit comments

Comments
 (0)