mirror of
https://github.com/akpaevj/OneSTools.TechLog.git
synced 2024-12-06 08:16:09 +02:00
Библиотека позволяет выполнять парсинг технологического журнала 1C (в обычном и "live" режиме) и получать каждое событие в нормализованном видe
.github/workflows | ||
OneSTools.TechLog | ||
OneSTools.TechLog.Exporter.Core | ||
OneSTools.TechLog.Exporter.ElasticSearch | ||
.gitignore | ||
LICENSE | ||
OneSTools.TechLog.sln | ||
README.md |
OneSTools.TechLog
Библиотека позволяет выполнять парсинг технологического журнала и получать каждое событие (Event) в нормализованном виде (Dictionary<string, string>), где Key - это имя свойства, а Value - это значение свойства. Реализована на основе TPL от Microsoft (Dataflow) и использует все преимущества конвейерной обработки данных.
Пример использования:
private async Task ReadTL()
{
var parser = new TechLogParser(@"C:\TechLogData", EventHandler);
await parser.Parse();
}
private void EventHandler(Dictionary<string, string> eventData)
{
switch (eventData["EventName"])
{
case "DBMSSQL":
var sql = eventData["Sql"];
var user = eventData["Usr"];
// To do something
break;
default:
break;
}
}
TO DO: Сделать realime чтение и экспорт данных в MongoDB/Elastic/Clickhouse(возможно динамически выполнять alter table для новых свойств, имитируя таким образом работу с документами, т.е. неструктурированными и ненормализованными данными)