Source code for EventManager.formatters.json_formatter
import json
from EventManager.formatters.default_formatter import DefaultFormatter
[docs]
class JsonFormatter(DefaultFormatter):
[docs]
def format(self, metadata, *args):
data = dict(metadata)
data.update({arg.get_key(): arg.get_value() for arg in args})
return json.dumps(data)
[docs]
def format_message(self, metadata, message):
data = dict(metadata)
data["message"] = message
return json.dumps(data)
[docs]
def format_arguments(self, body, *args):
arg_data = {arg.get_key(): arg.get_value() for arg in args}
return f'"{body}": ' + json.dumps(arg_data)