AuditLiteLib 1.1.0

dotnet add package AuditLiteLib --version 1.1.0
                    
NuGet\Install-Package AuditLiteLib -Version 1.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AuditLiteLib" Version="1.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AuditLiteLib" Version="1.1.0" />
                    
Directory.Packages.props
<PackageReference Include="AuditLiteLib" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add AuditLiteLib --version 1.1.0
                    
#r "nuget: AuditLiteLib, 1.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package AuditLiteLib@1.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=AuditLiteLib&version=1.1.0
                    
Install as a Cake Addin
#tool nuget:?package=AuditLiteLib&version=1.1.0
                    
Install as a Cake Tool

AuditLite

AuditLite — это легковесное решение для аудита действий пользователей в системах, работающих с чувствительными данными. Проект позволяет фиксировать действия сотрудников, помогая выявлять нарушения, злоупотребления и утечки информации.


Зависимости

  • .NET 8.0 SDK
  • Подключение к внешней СУБД (см. ниже список поддерживаемых)

Установка и запуск

  1. Перейдите в корневую папку вашего проекта. Откройте консоль.
  2. Установите библиотеку: dotnet add package AuditLiteLib --version 1.0.0
  3. Добавьте пространство имён: using AuditLiteLib;
  4. Убедитесь, что запущены AuditLiteService и выбранная СУБД (см. список поддерживаемых).
  5. Наслаждайтесь использованием!

Пример минимальной инициализации:

await using var auditManager = AuditManagerFactory.Create(configure =>
		{configure.SetServerUrl("http://localhost:5001");} 

await auditManager.CreateAuditEventAsync("YourEventType", eventData);

Примечание: Инструкции по установке и запуску будут расширяться.
Настройка осуществляется через appsettings.json.


Конфигурация

AuditLite предоставляет гибкие настройки для адаптации под ваши требования.

Параметр Описание
ServerUrl URL сервиса AuditLiteService. Обязательный параметр.
FlushIntervalMilliseconds Интервал (в миллисекундах) автоматической выгрузки и отправки событий. <br> Значение -1 отключает таймер. <br> Значение по умолчанию 10.000 мс.
MaxBufferSize Максимальная вместительность буфера для событий. <br> Значение должно быть больше 0. <br> Значение по умолчанию 1.000.
MaxChunkedRetries Количество попыток отправки пакетов событий чанками, в случае превышения максимального размера пакета в 4мб. <br> Значение 0 отключает отправку чанками. <br> Значение по умолчанию 3.

Пример полной конфигурации:

await using var auditManager = AuditManagerFactory.Create(configure =>
{
    configure.SetServerUrl("http://localhost:5001")
             .SetFlushIntervalMilliseconds(10000)
             .SetMaxBufferSize(1000)
             .SetMaxChunkedRetries(3);    
});

Структура проекта

  • AuditLiteLib — библиотека с основной логикой аудита
  • AuditLiteService — сервис для работы с базой данных и API

Основные возможности

  • Фиксация деталей события

    • Запись типа операции, даты и времени, пользовательского окружения (имя пользователя, название метода, устройство, IP-адрес)
    • Поддержка пользовательских полей (custom fields)
  • Визуализация и мониторинг

    • Интеграция с инструментами визуализации (например, Grafana)
    • Выявление аномальных и нелегитимных действий
  • Гибкая настройка

    • Настройка частоты отправки событий и размера буфера
    • Использование gRPC + Protobuf для высокопроизводительной передачи данных
  • Эффективное хранение данных

    • Оптимизированная структура базы данных
    • Поддерживаемые СУБД:
      • MongoDB
      • Elasticsearch
      • PostgreSQL

Лицензия

Этот проект распространяется под лицензией MIT.


Контакты

Если у вас есть вопросы:

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.1.0 289 6/12/2025
1.0.0 193 5/11/2025

Initial release of the AuditLite library for tracking user actions.