Logging options for Ada

The other day Marc C. posted a link to an AdaCore Gem dealing with the very nice GNATColl.Traces package, and shortly thereafter he did another reddit/r/ada post collecting a bunch of Ada logging tools.

As it turns out, there are five very nice solutions available to us Ada’ists:

I’ve personally used GNATCOLL.Traces and AWS.Log, and both are pretty good. I’m partial to GNATCOLL.Traces because of its syslog support, though at the time of writing GNATCOLL.Traces.Syslog is borked. It simply segfaults when you try to use it. Hopefully AdaCore will have that bug sorted out soon.

I intend to give Alog a whirl, as it was updated to version 0.4 yesterday, and one of the “fixes” in the new version reads “Cleanup of syslog facility”, which to a syslog fan like me is sweet music.

YAMI4 1.3.0 released

Inspirel has just released version 1.3.0 of the YAMI4 messaging solution for distributed systems.

YAMI4 is a message-oriented, asynchronous middleware for distributed systems. YAMI4 can be used as a communication “glue” or a “nervous system” that allows different programs to communicate effectively across the network. It is a consistent set of libraries written for various programming languages and for several popular system platforms. YAMI4 was created with distributed control systems in mind, but the resulting properties like small size and good scalability make it an attractive solution for a wide variety of systems. YAMI4 has been used not only in control and monitoring systems, but also as a communication layer for the backend of large and highly scalable website.

Some of the new features in this release are

  • he Ada-Ravenscar variant of the core interface was introduced for systems that expect compliance with the Ravenscar language profile.
  • Added a Name Server service that helps to build easy to configure and manageable systems.
  • Added a Message Broker that supports heavy-duty publish-subscribe messaging with very powerful and flexible message routing engine.
  • Cache that allows easy data sharing between nodes in a single
    distributed system.
  • Some minor tweaks have been applied to Makefiles and .gpr files to ensure proper compilation with recent GNAT versions and to include FreeBSD in the set of supported systems.
  • The YAMI4 book was revised to cover all the new features.

You can read the full release announcement here.