Skip to content

javadelight/delight-log

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

135 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

delight-log

Delight Log is a minimal implementation for asynchronous logging in Java.

Why: To provide a logging implementation works well in multi-threaded environments with minimal performance impact.

What Not: This library is very feature-poor by design to keep it maintainable and portable.

This project is part of Java Delight.

Usage

Creating a Log Repository

All logs are held in a log repository which can be created as follows.

PropertyNode logs = Logs.create();

Note: Before the application terminates the log repository should always be finalized as follows to ascertain that the thread used by the logging node is released.

logs.stop().get();

Log a Text Entry

The following will log a number of simple Strings.

logs.record(Logs.string("log1", "entry 1"));
logs.record(Logs.string("log1", "entry 2"));

Retrieving Logged Entries

The entries written in the previous example can be retrieved as follows:

String log1 = logs.retrieve("log1", StringLog.class).get().toString();

System.out.println(log1);

This results in an output as follows:

[
    'entry1',
    'entry1'
]

Preventing Log from Overflowing

By default individual logs are limited to 40 items. If this limit is reached, the oldest values will be purged.

A custom limit can be set by passing an integer to the logs constructor method:

PropertyNode limitedLog = Logs.create(20);

Maven Dependency

<dependency>
    <groupId>org.javadelight</groupId>
	<artifactId>delight-log</artifactId>
	<version>[latest version]</version>
</dependency>

Find latest version here.

Add repository if required:

<repositories>
	<repository>
		<id>Appjangle Releases</id>
		<url>http://maven.appjangle.com/appjangle/releases</url>
	</repository>
</repositories>

Compatibility

This project is compatible with the following environments:

  • Java 1.6+
  • GWT 2.5.0+
  • Android (any)
  • OSGi (any)

Further Resources

About

A very lightweight, asynchronous log implementation for Java.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors