in cookbooks/aws-parallelcluster-config/files/default/cloudwatch_agent/write_cloudwatch_agent_json.py [0:0]
def add_scheduler_plugin_log(config_data, cluster_config_path):
"""Add custom log files to config data if log files specified in scheduler plugin."""
cluster_config = load_config(cluster_config_path)
if (
get_dict_value(cluster_config, "Scheduling.SchedulerSettings.SchedulerDefinition.Monitoring.Logs.Files")
and get_dict_value(cluster_config, "Scheduling.Scheduler") == "plugin"
):
log_files = get_dict_value(
cluster_config, "Scheduling.SchedulerSettings.SchedulerDefinition.Monitoring.Logs.Files"
)
for log_file in log_files:
# Add log config
log_config = {
"timestamp_format_key": log_file.get("LogStreamName"),
"file_path": log_file.get("FilePath"),
"log_stream_name": log_file.get("LogStreamName"),
"schedulers": ["plugin"],
"platforms": ["centos", "ubuntu", "amazon"],
"node_roles": get_node_roles(log_file.get("NodeType")),
"feature_conditions": [],
}
config_data["log_configs"].append(log_config)
# Add timestamp formats
config_data["timestamp_formats"][log_file.get("LogStreamName")] = log_file.get("TimestampFormat")
return config_data