MUP1+-+Øvelse+9.1

Extend the already completed exercise 8 with logging. Different log levels should be used, discuss which levels you have used.
 * Exercise 1**

Givet i undervisning

Vi har valgt følgende fire alert levels: - 0: Emergency - Hvis programmet chrasher kritisk - 1: Alert - Vi vælger denne, fordi den vil informere hvis programmets funktionalitet ikke længere er intakt - 2: Warning - Vi vælger denne for de lidt 'lettere' advarsler, hvor det måske kunne gå galt - 3: Informational - Dette skriver informationer ud, mens programmet kører.

Analyse the log framework implementation, and present a short description on what happens when an appli- cation calls the OSAPI_LOG_XXX (XXX could be DBG, CRT, ALT, INF etc.) macro to write some log. Dis- cuss the chosen approach, what do you appreciate and what do you not.
 * Exercise 2**

stringstream gør at man kan bruge stream operatoren til at skrive til en string. getInstance opretter en klasse og returnere en pointer til den klasse.

Når vi bruger #define kan bruge funktionen således:



Implement an output plugin such that log is written directly to the syslog. The solution created in exercise must be extended with this implementation, such that it writes its log to sys- log instead of stout. Verify that this also works on the target.
 * Exercise 3**

Vi brugte LogOutputStdOut, der anvender std::out så vi kan streamer beskeder til vores skærm. Vi brugte syslog, og for at den virker skal den have en c-string, dertil anvendte vi stringstream. Man kalder openlog og closelog i constructoren og destructoren for at åbne og lukke sysloggen.