Pantheios.Ruby

Pantheios, for Ruby

Language License Gem Version Last Commit Ruby

Table of Contents

Introduction

Pantheios is a diagnostic logging API library, originally implemented for C/C++ and later for .NET. Pantheios.Ruby is the Ruby implementation.

It provides a layered logging model: application-facing severity levels and API helpers, optional front-ends (for example threshold filtering), and pluggable back-end log services (console, coloured console, file, null, multiplexing, and adapters).

Installation

Install via gem as in:

gem install pantheios-ruby

or add it to your Gemfile.

Pantheios.Ruby requires Ruby 2.0+.

NOTE: On Ruby 4+, also install logger (gem install logger, or gem 'logger' in your Gemfile). See Runtime Dependencies.

Use via require, as in:

require 'pantheios'

Components

  • Pantheios::API — primary logging API surface;
  • Pantheios::ApplicationLayer — stock severity levels and related application helpers;
  • Pantheios::Core — core registration and back-end wiring;
  • Pantheios::FrontEnds — front-ends such as ThresholdFrontEnd;
  • Pantheios::Services — back-end log services (console, coloured console, file, null, multiplexing, adapters);
  • Pantheios::Util — process, reflection, thread, and version utilities;

Examples

Examples are provided in the examples directory, along with a markdown description where present. A detailed list TOC of them is provided in EXAMPLES.md.

Project Information

Where to get help

GitHub Page

Contribution guidelines

Defect reports, feature requests, and pull requests are welcome on https://github.com/synesissoftware/Pantheios.Ruby.

Dependencies

Efferent (fan-out)

Libraries upon which Pantheios.Ruby depends:

Runtime Dependencies (aka "Normal Dependencies")
  • <none> declared in pantheios-ruby.gemspec;

NOTE: On Ruby 4+, logger is required at runtime (lib/pantheios/services/simple_file_log_service.rb, lib/pantheios/services/standard_log_service_adapter.rb) but is no longer a default gem and is not listed in pantheios-ruby.gemspec (so older Rubies in the [2.0, 4) range still resolve). Install it explicitly, e.g. gem install logger, or add gem 'logger' to your Gemfile. This repository’s Gemfile pulls it in when RUBY_VERSION >= '4'.

Development Dependencies

Afferent (fan-in)

Projects that depend on Pantheios.Ruby:

Runtime dependents
  • <none>;
Development dependents
  • <none>;

License

Pantheios.Ruby is released under the 3-clause BSD license. See LICENSE for details.