Who is in Your Network?

It is not a question about if but when someone will be eavesdropping on your network. It might not be a “break in” but a “break out”! Do you know how common it is to have your applications and systems communicate out to a third party? Way too often that communication is not known to you, nor even secure.

When I moved to the USA I found a company, LogRhythm, that developed a state of the art network monitor. I rarely blog about the company I work for but with the latest freemium version of NetMon I feel that the word needs to get out.  The NetMon is a treasure for easy network forensics, understanding what is happening on the network or what has happened on your network.

Continue reading

Posted in Uncategorized | Leave a comment

g3log 1.3 and g3sinks 1.1 released.

G3log v.1.3

  • with improvements for ARM, OSX, Linux and Windows platorms.
  • Nanosecond fractions granularity in log entries
  • plattform and build improvements
  • logging levels improvements
  • bugfixes – API, README updated with build instructions and more code examples.

G3Sinks v.1.2

  • improved log rotation triggered by size of log file or number of entries
  • g3log integration¬†improvements
  • improved README (logrotate) with build, install instructions
  • improved README for g3log integration and API usage.

Continue reading

Posted in C++, G2log, g3log, g3sink, logger, Uncategorized | Leave a comment

Ideone.com now, again, with async support

finally Ideone.com got its thread support back again!

Something like this would have failed a week ago

#include <iostream>
#include <thread>

using namespace std;
int main() {
   auto func = [](string input)  {
      cout << input << ", from " << __FUNCTION__ << endl;
   func("non threaded");
   auto id = thread(func, "from thread");
   return 0;
Posted in Uncategorized | Leave a comment

The world’s fastest logger vs G3log

Why not take the world’s fastest logger and compare it to G3log.  It’s a fun comparison and might show some PRO and CONs with each.

This comparison will show that being the world’s fastest logger is not good enough when it comes to latency. G3log wins hands down.

Does it sound like a contradiction? It’s not. Read on …

Continue reading

Posted in Uncategorized | 31 Comments

BitBucket no more, G3log has moved to GitHub

if you go to https://bitbucket.org/KjellKod/g3log you will be greeted by a “we have moved” sign 


G2log, the idea try-out G2log-dev and finally G3log all used mercurial and resided at BitBucket. Yesterday that changed. G3log resides solely on GitHub from now and the foreseeable future.

An email to all(*)  repository watchers and forkers explained briefly where G3log had moved.

(* for private watchers and forkers I had no “send message” option. I still see their username so why BitBucket made it impossible for me to contact them while still showing that much information is a mystery to me)

Professionally I have had much more experience with Git than Hg. The appeal in Git with ease of dealing with branches, pull requests and conflicts contrasted sharply with Hg’s multiple head madness. Finally it made me create a G3log mirror on GitHub a while ago. All of a sudden pull requests and dealing with feature requests became so much easier.

(Git does exist on ButBucket as well but BitBucket is lacking in other areas that I find important.)

Take with that revelation also greater community support and, to me, better support to requested features made it easy to take the decision to completely switch over to GitHub.

For now g2log and g2log-dev will continue to reside on BitBucket. Those two repositories rarely see code changes except for an occasional bugfix or compiler support fix requested by a user.

Moving G3log to GitHub will hopefully mean that it’s easier to access it for the community as well as contribute to it than it was on BitBucket.
Next on the TODO list for G3log are some long pending improvements to crash handling, lready now in large rolled out for Windows. Also easier install (first out Linux) and some small improvements to existing features are planned.

Posted in Uncategorized | Leave a comment

G3log now available on GitHub: github.com/KjellKod/g3log

Thanks to popular request you can now find g3log on GitHub as well as on BitBucket.
Feel free to use whichever repository is best for you.

Use github.com/KjellKod/g3log or bitbucket.com/KjellKod/g3log (it’s moved to be only at github)

Posted in Uncategorized | 2 Comments

Is it possibly to get a stacktrace to file from a signal handler?

I got a great question from a reader of the g2log article on CodeProject regarding g2log’s implementation of a crashhandler.

[…]new, delete and IO operations are not safe in signal handlers and could cause unpredictable behavior. I checked your implementation and maybe I am wrong but it seems this is exactly what you did (write to file/ empty queue within the signal handler). Is that by design, am I wrong or you missed this.

Of course the reader was completely right.   It is not safe, it is one of those “please don’t try this at home” kind of things.  With “safe” I here mean, “Posix guaranteed safe“.

Is there any “safe” way at all of getting the stacktrace to file after a fatal signal has happened?

Continue reading

Posted in Uncategorized | Leave a comment