Skip to content

Instantly share code, notes, and snippets.

@M0nteCarl0
Created July 27, 2023 06:34
Show Gist options
  • Save M0nteCarl0/b4f96d1d2f5331cf69639b424afe5e12 to your computer and use it in GitHub Desktop.
Save M0nteCarl0/b4f96d1d2f5331cf69639b424afe5e12 to your computer and use it in GitHub Desktop.
Windows and linux logs store in Redis and SQLlite
import syslog
import redis
import sqlite3
# Подключение к Redis
redis_client = redis.Redis(host='localhost', port=6379)
# Подключение к SQLite
conn = sqlite3.connect('syslog.db')
cursor = conn.cursor()
# Открытие файла syslog
syslog_file = open('/var/log/syslog', 'r')
# Чтение содержимого файла построчно
for line in syslog_file:
# Разбор строки syslog
# В этом примере мы просто сохраняем каждую строку в Redis и SQLite
syslog_id = redis_client.incr('syslog:id')
redis_client.hset('syslog', syslog_id, line.strip())
cursor.execute("INSERT INTO syslog (id, message) VALUES (?, ?)", (syslog_id, line.strip()))
# Сохранение изменений в SQLite
conn.commit()
# Закрытие файла syslog
syslog_file.close()
# Закрытие подключения к SQLite
conn.close()
import win32evtlog
import redis
import sqlite3
# Подключение к Redis
redis_client = redis.Redis(host='localhost', port=6379)
# Подключение к SQLite
conn = sqlite3.connect('syslog.db')
cursor = conn.cursor()
# Открытие журнала событий Windows
event_log = win32evtlog.OpenEventLog(None, 'System')
# Чтение записей из журнала событий
flags = win32evtlog.EVENTLOG_BACKWARDS_READ | win32evtlog.EVENTLOG_SEQUENTIAL_READ
events = win32evtlog.ReadEventLog(event_log, flags, 0)
# Чтение и разбор каждого события
for event in events:
# Разбор события
# В этом примере мы просто сохраняем каждое событие в Redis и SQLite
message = event.StringInserts
syslog_id = redis_client.incr('syslog:id')
redis_client.hset('syslog', syslog_id, message)
cursor.execute("INSERT INTO syslog (id, message) VALUES (?, ?)", (syslog_id, message))
# Сохранение изменений в SQLite
conn.commit()
# Закрытие журнала событий Windows
win32evtlog.CloseEventLog(event_log)
# Закрытие подключения к SQLite
conn.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment