Logování
Tato kapitola popisuje možnosti logování běhu SecuSign SiDK a jak je nastavit. Vhodné nastavení logování s výhodou poslouží pro odstranění chyb, zejména na testovacím prostředí.
Technické logování
Kompletní technické logování zaznamenává veškeré informace o operacích, metodách, vstupech a výstupech či výjimkách, které byly použity, resp. nastaly, při volání webových služeb SecuSign SDK. Dále obsahuje také konfigurační nastavení produktu a záznamy o využití jednotlivých komponent.
Nastavení technického logování
Technické logování se nastavuje v konfiguračním souboru webové služby InstallDir\WebService\Web.config
.
V elementu <appSettings>
a klíči DebugLogPath se jako hodnota uvede cesta k .log souboru. Je nutné, aby LOG soubor byl přístupný pro zápis uživateli, pod kterým běží aplikační pool webové služby SecuSign.
Příklad zápisu v konfiguračním souboru (elementy configuration a appSettings bývají již vytvořené):
<configuration>
<appSettings>
…
<add key="DebugLogPath" value="C:\Logs\SecuSign_debug.log" />
…
</appSettings>
</configuration>
Úroveň technického logování lze nastavit pomocí klíče:
<add key="DebugLogLevel" value="_N_" />
Hodnoty parametru N pro nastavení úrovně jsou definované následovně:
-
Trace = 6
-
Debug = 5
-
Info = 4
-
Warning = 3
-
Error = 2
-
Critical = 1
-
None = 0.
Fragmentace technického logování
Technické logování do souboru je možné fragmentovat – záznamy rozdělit po jednotlivých dnech. K tomu slouží konfigurační klíč DebugLogFragments (jeho výchozí hodnota je 0). Pokud je nastavena hodnota vyšší než 0, rozděluje se LOG po dnech dle zvolené hodnoty a s tím, že se ponechávají vždy nejnovější log soubory.
Výchozí maska DebugLogFragments souboru je yyyy-MM-dd (příklad SecuSignSDK_2020-07-10.log). Masku lze nastavit pomocí klíče DebugLogFragmentsMask.
Provozní logování
Provozní logování obsahuje hlavní a podstatné informace o provozu na webových službách SecuSign SDK jako jsou Datum a čas volání, ID procesu, ID vlákna, IP adresa volajícího, Uživatelské jméno volajícího (pokud se v hlavičce identifikoval), Dobu trvání procesu, Název volané metody a Doplňující informace (Výsledek volání).
Nastavení provozního logování
Nastavuje se v konfiguračním souboru webové služby InstallDir\WebService\Web.config
.
V elementu <appSettings>
se vytvoří nový klíč s názvem LogMethodCalls, ve kterém se jako hodnota uvede cesta k CSV souboru. Je nutné, aby CSV soubor byl přístupný pro zápis uživateli, pod kterým běží aplikační pool webové služby SecuSign.
Příklad zápisu v konfiguračním souboru (elementy configuration a appSettings bývají již vytvořené):
<configuration>
<appSettings>
…
<add key="LogMethodCalls" value="C:\Logs\SecuSign_provoz.csv" />
…
</appSettings>
</configuration>
Provozní logování je možné pomocí konfiguračního klíče LogMethodCallsIO rozšířit o další informace. Pokud je nastaveno provozní logování webové služby pomocí LogMethodCalls, nastavením LogMethodCallsIO na true se do CSV souboru přidají informace se jménem souboru, velikostí souboru, hashem vstupního a hashem výstupního souboru.
<configuration>
<appSettings>
…
<add key="LogMethodCallsIO" value="true " />
…
</appSettings>
</configuration>
Pro identifikaci requestu v technickém logu a CSV logu je implementována možnost pomocí rozlišení klíče. Jedná se o identifikaci requestu pomocí JobID, které je buď dodané ve volání v http header X-JobID nebo se náhodně generuje.
Pro identifikaci slouží klíč:
<configuration>
<appSettings>
…
<add key=" <add key="LogMethodCallsJobID" value="true" />
…
</appSettings>
</configuration>