/TreeLogger

UI Logger który działa w sposób równoległy, pozwala sporządzać raport podczas całej pracy wykonania określonej pracy, przedstawia czas wykonania oraz poszczególne komunikaty zdefiniowane przez użytkonwika, może być dołączony do dowolnej .NET-aplikacji

Primary LanguageC#

TreeLogger ⚙️

UI Logger który działa w sposób asynchroniczny, pozwala sporządzać raport podczas całej pracy wykonania określonej pracy, przedstawia czas wykonania oraz poszczególne komunikaty zdefiniowane przez użytkonwika, może być dołączony do dowolnej .NET-aplikacji. Wspiera również asynchroniczne przerywanie korzystające z tokena.

Implementacja w aplikacji 💡

  1. Dołaczyć TreeLogger.dll
  2. Użyć w kodzie 😀

Pierwszy parametr określa nazwę logowanej operacji, drugi parametr przyjmuje delegat do opisania operacji.

Wersja bez możliwości asynchronicznego przerwania:

TreeLoggerRunner.RunTreeLogger("Ksiegowanie dokumentu", (logger) =>
{
    for(int i=0;i<10;i++)
    {
        logger.LogMessage($"Value = {i}", TreeLogger.Enums.MessageSeverity.Information);
    }
});

Wersja z asynchronicznym przerwaniem

TreeLoggerRunner.RunTreeLogger("Ksiegowanie dokumentu", (logger, token) =>
{
    for(int i=0;i<10;i++)
    {
        if(token.IsCancellationRequested) return;
        logger.LogMessage($"Value = {i}", TreeLogger.Enums.MessageSeverity.Information);
    }
});

Wersja z uruchamianiem subprocesów

TreeLoggerRunner.RunTreeLogger("Ksiegowanie dokumentu handlowego", (logger, token) =>
{
    logger.LogMessage("Ksiegowanie naglowka");
    logger.InitSubLogging();
    for(int i = 0;i <10;i++)
    {
        if (token.IsCancellationRequested) return;
        logger.LogMessage($"Aktualna wartosc : {i}", TreeLogger.Enums.MessageSeverity.Information);
    }
    logger.EndSubLogging();
    logger.LogMessage("Ksiegowanie stopki");
});

Jak wygląda w praktyce

default withasync Screenshot_2