in src/modules/log_parser.py [0:0]
def run_module() -> None:
"""
Entry point of the script.
Sets up and runs the log parsing module with the specified arguments.
"""
module_args = dict(
start_time=dict(type="str", required=False),
end_time=dict(type="str", required=False),
log_file=dict(type="str", required=False, default="/var/log/messages"),
keywords=dict(type="list", required=False, default=[]),
ansible_os_family=dict(type="str", required=True),
function=dict(type="str", required=True, choices=["parse_logs", "merge_logs"]),
logs=dict(type="list", required=False, default=[]),
)
module = AnsibleModule(argument_spec=module_args, supports_check_mode=True)
parser = LogParser(
start_time=module.params.get("start_time"),
end_time=module.params.get("end_time"),
log_file=module.params.get("log_file"),
ansible_os_family=module.params["ansible_os_family"],
logs=module.params.get("logs"),
)
if module.params["function"] == "parse_logs":
parser.parse_logs()
elif module.params["function"] == "merge_logs":
parser.merge_logs()
result = parser.get_result()
module.exit_json(**result)