-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path8permin_log.py
More file actions
42 lines (34 loc) · 1.17 KB
/
Copy path8permin_log.py
File metadata and controls
42 lines (34 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Create a logger
logger = logging.getLogger("python-logger")
# Add a FileHandler to write logs to a file
file_handler = logging.FileHandler("/var/log/python_logs/python.log")
logger.addHandler(file_handler)
# Generate 8 logs per minute
logs_per_minute = 8
seconds_per_log = 60 / logs_per_minute
while True:
log_level = random.choice(["info", "warning", "error"])
# Get system information
system_name = platform.node()
cpu_utilization = psutil.cpu_percent()
message = {
"system": system_name,
"cpu": cpu_utilization,
"log_level": log_level,
"log_message": f"This is a {log_level} message."
}
logger.log(logging.getLevelName(log_level.upper()), json.dumps(message))
# Simulate errors
if log_level == "error":
# Simulate an exception
try:
result = 1 / 0
except Exception as e:
error_message = {
"system": system_name,
"cpu": cpu_utilization,
"log_level": log_level,
"log_message": f"An error occurred: {str(e)}"
}
logger.error(json.dumps(error_message))
time.sleep(seconds_per_log)