Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Kieker 1.10
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## kieker.monitoring.writer.filesystem
Class SyncFsWriter

    java.lang.Object
      kieker.monitoring.writer.AbstractMonitoringWriter
          kieker.monitoring.writer.filesystem.SyncFsWriter

All Implemented Interfaces:
  IMonitoringRecordReceiver, IMonitoringWriter

    public final class SyncFsWriter

extends AbstractMonitoringWriter

Simple class to store monitoring data in the file system. Although a buffered writer is used, outliers (delays of 1000 ms) occur from time to time if many monitoring events have to be written. We believe that outliers result from a flush on the buffer of the writer. A more sophisticated writer to store data in the file system is the AsyncFsWriter. This does not introduce the outliers that result from flushing the writing buffer, since provides an asynchronous insertMonitoringData method. However, the AsyncFsWriter introduces a little more overhead because a writing queue is required and it isn't tested as much as the FileSystenWriter. Additionally, the resource demands (CPU, bus etc.) for writing monitoring data are not anymore occurring during the time of the execution that is monitored, but at some other (unknown) time. The AsyncFsWriter should usually be used instead of this class to avoid the outliers described above.

Since:
  < 0.9
Author:
  Matthias Rohr, Andre van Hoorn, Jan Waller

Field Summary
`static String` | `CONFIG_BUFFER`
`static String` | `CONFIG_FLUSH`
`static String` | `CONFIG_MAXENTRIESINFILE`
`static String` | `CONFIG_MAXLOGFILES`
`static String` | `CONFIG_MAXLOGSIZE`
`static String` | `CONFIG_PATH`

Constructor Summary
`SyncFsWriter(Configuration configuration)` Creates a new instance of this class using the given configuration to initialize the class.

Method Summary
`boolean` | `newMonitoringRecord(IMonitoringRecord monitoringRecord)` Called for each new record.
`void` | `terminate()` Called by the Monitoring Controller to announce a shutdown of monitoring.
`String` | `toString()` Delivers a string representation of this writer.

Methods inherited from class kieker.monitoring.writer.AbstractMonitoringWriter
`newMonitoringRecordNonBlocking, setController`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### CONFIG_PATH

    public static final String CONFIG_PATH

### CONFIG_MAXENTRIESINFILE

    public static final String CONFIG_MAXENTRIESINFILE

### CONFIG_MAXLOGSIZE

    public static final String CONFIG_MAXLOGSIZE

### CONFIG_MAXLOGFILES

    public static final String CONFIG_MAXLOGFILES

### CONFIG_FLUSH

    public static final String CONFIG_FLUSH

### CONFIG_BUFFER

    public static final String CONFIG_BUFFER

Constructor Detail

### SyncFsWriter

    public SyncFsWriter(Configuration configuration)
                 throws IllegalArgumentException

  Creates a new instance of this class using the given configuration to initialize the class.

  Parameters:
    `configuration` - The configuration used to initialize this writer.
  Throws:
    `IllegalArgumentException` - If the given configuration is invalid.

Method Detail

### newMonitoringRecord

    public final boolean newMonitoringRecord(IMonitoringRecord monitoringRecord)

  Called for each new record. Notice, that this method should not throw an exception, but indicate an error by the return value false.

  Parameters:
    `monitoringRecord` - the record.
  Returns:
    true on success; false in case of an error.

### terminate

    public final void terminate()

  Called by the Monitoring Controller to announce a shutdown of monitoring. Writers should return as soon as it is safe to terminate Kieker.

### toString

    public final String toString()

  Description copied from interface: `IMonitoringWriter`
  Delivers a string representation of this writer.

  Specified by:
    `toString` in interface `IMonitoringWriter`
  Overrides:
    `toString` in class `AbstractMonitoringWriter`
  Returns:
    A string.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Kieker 1.10
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright 2014 Kieker Project, http://kieker-monitoring.net