Updating the readme file

master
denes 5 years ago
parent 4b7a1cb96a
commit fb2ca5cbd0
Signed by: denes
GPG Key ID: A7D50EAD42F9FC9F

2
.gitignore vendored

@ -16,4 +16,4 @@ cpp_logger_assignment.kdev4
# bin
cpplogger
cpplogger_test

@ -34,7 +34,8 @@ public:
<< "\n"
<< "Option -c and -f are mutually exclusive, specify one.\n"
<< "\n"
<< "Denes Matetelki <denes@matetelki.com>\n";
<< "Homepage: <https://gitea.matetelki.eu/denes/cpp_logger_assignment>\n"
<< "Author: Denes Matetelki <denes@matetelki.com>\n";
if (cout)
std::cout << oss.str();

@ -1,3 +1,72 @@
# cpp_logger_assignment
Programming exercise to implement a logger class
Programming exercise to implement a logger class
Build it with:
```
cmake .
make
./cpplogger
```
And/or run unit-tests, using [catch2](https://github.com/catchorg/Catch2) as a submodule.
```
git submodule update --init --recursive
cmake . -DBUILD_TESTS=ON
make
./cpplogger_test
```
## The binary can be used as a command line tool:
```
./cpplogger
Usage: cpplogger [OPTION]
Logs the input (till EOF) to the console or to a file.
Options:
-c, log to console
-f FILE log to FILE
-t, prefix lines with timestamp
-n, prefix lines with hostname
-u, prefix lines with user name
-h print this help
Option -c and -f are mutually exclusive, specify one.
Homepage: <https://gitea.matetelki.eu/denes/cpp_logger_assignment>
Author: Denes Matetelki <denes@matetelki.com>
```
Examples:
```
./cpplogger -t -u -c
hello world
Mon Nov 11 16:01:03 2019 dmatetelki hello world
how is it going
Mon Nov 11 16:01:09 2019 dmatetelki how is it going<CTRL+D>
```
```
cat /tmp/this.txt | ./cpplogger -f /tmp/that.txt
```
## Or used as a library
```
#include <Logger.hpp>
Logger::getInstance()->setStream(std::ostream* os);
Logger::getInstance()->setPrintTimeStamp(true);
Logger::getInstance()->setPrintUserName(false);
LOG << word1 << word2 << variable << END;
```

Loading…
Cancel
Save