box4
@box4

Как правильно Update выполнить в базе postgresql?

Добрый день, в таблицу, в колоне value записываются логи в таком виде, в самом заббиксе нет возможности использовать regexp
по этой причине хочу оставить в value только необходимое, логи падают в таком виде,
Имя журнала:   Security
Источник:      Microsoft-Windows-Security-Auditing
Дата:          04.07.2017 13:04:31
Код события:   4624
Категория задачи:Вход в систему
Уровень:       Сведения
Ключевые слова:Аудит успеха
Пользователь:  Н/Д
Компьютер:     rootpc
Описание:
Вход с учетной записью выполнен успешно.

Субъект:
	ИД безопасности:		система
	Имя учетной записи:		ROOTPC$
	Домен учетной записи:		WORKGROUP
	Код входа:		0x3e7

Тип входа:			7

Новый вход:
	ИД безопасности:		rootpc\root
	Имя учетной записи:		root
	Домен учетной записи:		rootpc
	Код входа:		0x1d82ccc
	GUID входа:		{00000000-0000-0000-0000-000000000000}

Сведения о процессе:
	Идентификатор процесса:		0x2dc
	Имя процесса:		C:\Windows\System32\winlogon.exe

Сведения о сети:
	Имя рабочей станции:	ROOTPC
	Сетевой адрес источника:	127.0.0.1
	Порт источника:		0

Сведения о проверке подлинности:
	Процесс входа:		User32 
	Пакет проверки подлинности:	Negotiate
	Промежуточные службы:	-
	Имя пакета (только NTLM):	-
	Длина ключа:		0

Данное событие возникает при создании сеанса входа. Оно создается в системе, вход в которую выполнен.

Поля "Субъект" указывают на учетную запись локальной системы, запросившую вход. Обычно это служба, например, служба "Сервер", или локальный процесс, такой как Winlogon.exe или Services.exe.

В поле "Тип входа" указан тип выполненного входа. Самыми распространенными являются типы 2 (интерактивный) и 3 (сетевой).

Поля "Новый вход" указывают на учетную запись, для которой создан новый сеанс входа, то есть на учетную запись, с которой выполнен вход.

В полях, которые относятся к сети, указан источник запроса на удаленный вход. Имя рабочей станции доступно не всегда, и в некоторых случаях это поле может оставаться незаполненным.

Поля сведений о проверке подлинности содержат подробные данные о конкретном запросе на вход.
	- GUID входа - это уникальный идентификатор, который позволяет сопоставить данное событие с событием KDC.
	- В поле "Промежуточные службы" указано, какие промежуточные службы участвовали в данном запросе на вход.
	- Поле "Имя пакета" указывает на подпротокол, использованный с протоколами NTLM.
	- Поле "Длина ключа" содержит длину созданного ключа сеанса. Это поле может иметь значение "0", если ключ сеанса не запрашивался.
Xml события:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-Security-Auditing" Guid="{54849625-5478-4994-A5BA-3E3B0328C30D}" />
    <EventID>4624</EventID>
    <Version>0</Version>
    <Level>0</Level>
    <Task>12544</Task>
    <Opcode>0</Opcode>
    <Keywords>0x8020000000000000</Keywords>
    <TimeCreated SystemTime="2017-07-04T07:04:31.590797100Z" />
    <EventRecordID>12290</EventRecordID>
    <Correlation />
    <Execution ProcessID="664" ThreadID="6568" />
    <Channel>Security</Channel>
    <Computer>rootpc</Computer>
    <Security />
  </System>
  <EventData>
    <Data Name="SubjectUserSid">S-1-5-18</Data>
    <Data Name="SubjectUserName">ROOTPC$</Data>
    <Data Name="SubjectDomainName">WORKGROUP</Data>
    <Data Name="SubjectLogonId">0x3e7</Data>
    <Data Name="TargetUserSid">S-1-5-21-1536508992-1930176244-3495809711-1000</Data>
    <Data Name="TargetUserName">root</Data>
    <Data Name="TargetDomainName">rootpc</Data>
    <Data Name="TargetLogonId">0x1d82ccc</Data>
    <Data Name="LogonType">7</Data>
    <Data Name="LogonProcessName">User32 </Data>
    <Data Name="AuthenticationPackageName">Negotiate</Data>
    <Data Name="WorkstationName">ROOTPC</Data>
    <Data Name="LogonGuid">{00000000-0000-0000-0000-000000000000}</Data>
    <Data Name="TransmittedServices">-</Data>
    <Data Name="LmPackageName">-</Data>
    <Data Name="KeyLength">0</Data>
    <Data Name="ProcessId">0x2dc</Data>
    <Data Name="ProcessName">C:\Windows\System32\winlogon.exe</Data>
    <Data Name="IpAddress">127.0.0.1</Data>
    <Data Name="IpPort">0</Data>
  </EventData>
</Event>


вопрос, как им образом можно из этой записи оставить только 5-6 строк в таблице value? эти 5-6 строк уникальны:
ИД безопасности: rootpc\root
Тип входа: 7
Дата: 04.07.2017 13:04:31
Код события: 4624
  • Вопрос задан
  • 339 просмотров
Решения вопроса 1
@javedimka
Хочу сока
>>> import re
>>> keywords = ['ИД безопасности:', 'Тип входа:', 'Дата:', 'Код события:']
>>> pattern = re.compile(r'\s+\w+|'.join(keywords))
>>> with open('log.txt', encoding='utf-8' ) as f:
...     for line in f:
...         if pattern.search(line):
...             print(line)
...
Дата:          04.07.2017 13:04:31

Код события:   4624

  ИД безопасности:		система

Тип входа:			7

  ИД безопасности:		rootpc\root

Ну и как видно не все они уникальны
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы