Një nga mënyrat kryesore për të diagnostikuar keqfunksionimet në funksionimin e softuerit që ekzekutohet tashmë në kompjuterin e përdoruesit është mbajtja e regjistrave të ngjarjeve - shkrimet. Në mënyrë tipike, ata regjistrojnë informacione në lidhje me nisjet, si dhe informacione të rëndësishme në lidhje me gjendjen e procesit dhe mjedisin e sistemit në rast të një dështimi kritik. Ju mund të krijoni shkrime si me mjetet tuaja, ashtu edhe duke përdorur shërbime të veçanta të sistemeve operative.
Është e nevojshme
- - përkthyes nga gjuha e përdorur programuese;
- - ndoshta një SDK të Platformës së Windows;
- - mundësisht një paketë zhvillimi për glibc.
Udhëzimet
Hapi 1
Analizoni kushtet e përdorimit dhe përpiloni kërkesat për nënsistemin, komponentin ose bibliotekën e zhvilluar që do të bëjë regjistrime. Përgjigjuni pyetjeve në lidhje me cilën platformë ose platforma duhet të operojë, cila do të jetë API-ja e saj.
Hapi 2
Në përputhje me tiparet e identifikuara të funksionimit dhe API-në e dhënë, krijoni një model për nënsistemin e regjistrimit. Filloni të zbatoni funksionalitetin e tij.
Hapi 3
Opsioni më i thjeshtë për regjistrim është krijimi i pavarur i skedarëve në një vend të përcaktuar nga konfigurimi i aplikacionit, dhe pastaj shkruani të dhëna në çdo format për ta. Përdorni funksionet standarde të bibliotekës C (fopen, fclose, fwrite), C ++ objekte standarde të rrymës bibliotekare (ofstream), klasa kornizë të përdorura (të tilla si CFile, QFile), ose funksionet e sistemit operativ API (CreateFile, WriteFile në Windows).
Hapi 4
Zbatoni regjistrimet duke përdorur syslog API në sistemet operative të përputhshme me UNIX. Funksionet e syslog API deklarohen në skedarin e kokës syslog.h. Lidheni atë në vendin e duhur në kodin burimor të projektit tuaj.
Hapi 5
Lidhu me shërbimin syslog duke përdorur thirrjen e funksionit openlog. Si parametra, kalojeni atë një tregues në një varg që përmban identifikuesin e aplikacionit ose përbërësit që do të shkruajë, flamujt e opsioneve dhe një maskë të ngjarjeve që do të kalohen në regjistër. Përdorni thirrjet në funksionet syslog dhe vsyslog për të shtuar shënime në regjistër. Telefononi funksionin e mbylljes për t'u shkëputur nga shërbimi. Një shembull i thjeshtë i kodit syslog mund të jetë: openlog ("parashtesa", LOG_NDELAY | LOG_CONS | LOG_PID, LOG_LOCAL1); syslog (LOG_INFO, "% s", "Informacion"); syslog (LOG_NOTICE, "% s", "Njoftim")); closelog (); Ka kuptim të lidheni me syslog kur inicializoni aplikacionin dhe të shkëputeni kur mbylleni.
Hapi 6
Në sistemet operative Windows, përdorni EventLog API për të shtuar shënime në regjistrat e sistemit. Thirrni RegisterEventSource për të marrë përshkruesin e regjistrit në makinerinë e specifikuar. Përdorni këtë dorezë kur telefononi funksionin ReportEvent që shkruan në regjistër. Kur të keni mbaruar, telefononi DeregisterEventSource për të mbyllur lidhjen dhe për të lëshuar burimet e alokuara nga RegisterEventSource. Shembulli më i thjeshtë i punës me EventLog mund të jetë: HANDLE h =:: RegisterEventSource (NULL, "AnySource"); ASSERT (h! = NULL);:: ReportEvent (h, EVENTLOG_INFORMATION_TYPE, 0, 0, NULL, 3, 0, "Text1Text2Text3", NULL);:: RegjistrohuEventSource (h); Ashtu si me syslog, ka kuptim të thirresh RegisterEventSource në fillim dhe DeregisterEventSource në mbylljen e aplikacionit.