以下是一个示例代码,用于从JSON格式日志中捕获两个时间戳之间的所有日志:
import json
def capture_logs_between_timestamps(logs, start_timestamp, end_timestamp):
captured_logs = []
for log in logs:
log_timestamp = log.get('timestamp')
if log_timestamp and start_timestamp <= log_timestamp <= end_timestamp:
captured_logs.append(log)
return captured_logs
# 示例日志数据
logs = [
{'timestamp': '2022-01-01 10:00:00', 'message': 'Log message 1'},
{'timestamp': '2022-01-01 11:00:00', 'message': 'Log message 2'},
{'timestamp': '2022-01-01 12:00:00', 'message': 'Log message 3'},
{'timestamp': '2022-01-01 13:00:00', 'message': 'Log message 4'},
]
# 定义起始和结束时间戳
start_timestamp = '2022-01-01 10:30:00'
end_timestamp = '2022-01-01 12:30:00'
# 捕获两个时间戳之间的日志
captured_logs = capture_logs_between_timestamps(logs, start_timestamp, end_timestamp)
# 打印捕获的日志
for log in captured_logs:
print(log)
输出:
{'timestamp': '2022-01-01 11:00:00', 'message': 'Log message 2'}
{'timestamp': '2022-01-01 12:00:00', 'message': 'Log message 3'}