aboutsummaryrefslogtreecommitdiffstats
path: root/tests/CommonLibs/LogTest.cpp
blob: f64041d1a7d0f9d0d902cdd56102fcfb18c3c7d2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/*
* Copyright 2009 Free Software Foundation, Inc.
* Copyright 2010 Kestrel Signal Processing, Inc.
*
*
* This software is distributed under the terms of the GNU Affero Public License.
* See the COPYING file in the main directory for details.
*
* This use of this software may be subject to additional restrictions.
* See the LEGAL file in the main directory for details.

	This program is free software: you can redistribute it and/or modify
	it under the terms of the GNU Affero General Public License as published by
	the Free Software Foundation, either version 3 of the License, or
	(at your option) any later version.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU Affero General Public License for more details.

	You should have received a copy of the GNU Affero General Public License
	along with this program.  If not, see <http://www.gnu.org/licenses/>.

*/

#include <iostream>
#include <iterator>

#include "Logger.h"

void printAlarms()
{
    std::ostream_iterator<std::string> output( std::cout, "\n" );
    std::list<std::string> alarms = gGetLoggerAlarms();
    std::cout << "# alarms = " << alarms.size() << std::endl;
    std::copy( alarms.begin(), alarms.end(), output );
}

int main(int argc, char *argv[])
{
	gLogInit("LogTest","NOTICE",LOG_LOCAL7);

	Log(LOG_EMERG).get() << " testing the logger.";
	Log(LOG_ALERT).get() << " testing the logger.";
	Log(LOG_CRIT).get() << " testing the logger.";
	Log(LOG_ERR).get() << " testing the logger.";
	Log(LOG_WARNING).get() << " testing the logger.";
	Log(LOG_NOTICE).get() << " testing the logger.";
	Log(LOG_INFO).get() << " testing the logger.";
        Log(LOG_DEBUG).get() << " testing the logger.";
    std::cout << "\n\n\n";
    std::cout << "testing Alarms\n";
    std::cout << "you should see three lines:" << std::endl;
    printAlarms();
    std::cout << "----------- generating 20 alarms ----------" << std::endl;
    for (int i = 0 ; i < 20 ; ++i) {
        Log(LOG_ALERT).get() << i;
    }
    std::cout << "you should see ten lines with the numbers 10..19:" << std::endl;
    printAlarms();
}