Usage logging description

The ringserver program can be configured to write data transfer logs for transmission and/or reception. Transmission (TX) refers to data packets sent from the server, reception (RX) refers to data packets received by the server. Commonly this is used to track data shipments to downstream clients (transmission) with a summary of each unique stream ID (e.g. channel) for each client. This functionality is configured either through command line arguments or configuration file options.

Log entries are written either when a client disconnects or at specified intervals. For long-term operation the log flushing interval is usually set to 24 hours, ensuring that no more than 24 hours of data is accumulated before writing an entry.

In the directory specified for the transfer logs, time stamped files will be created in the following pattern:

for transmission (TX) logs:


for reception (RX) logs:


An optional prefix string may be specified in the configuration file and it will be added to each log file. Useful for separating the log entries from more than one server.

For each client a log entry will be written with the following information:
  1. A START CLIENT line identifying the client address, log time and connection time
  2. A line for each stream ID (e.g. channel), followed by a byte count and packet count
  3. An END CLIENT line with the total byte count

An example of a transmission entry for a SeedLink client:

START CLIENT [] (SeedLink|SeedLink Client) @ 2014-01-08 02:15:19 (connected 2014-01-08 02:12:38) TX
IU_ANMO_00_BH1/MSEED 4096 8
NL_HGN_02_BHZ/MSEED 14336 28
NL_HGN_02_BHE/MSEED 14336 28
IU_ANMO_10_BH2/MSEED 12288 24
IU_ANMO_10_BHZ/MSEED 9728 19
IU_ANMO_00_BH2/MSEED 3072 6
IU_ANMO_10_BH1/MSEED 9728 19
NL_HGN_02_BHN/MSEED 14336 28
END CLIENT [] total TX bytes: 86016

The byte counts reported are for the transmitted/received packet data and do not include any SeedLink or DataLink protocol overhead. In other words, these represent the data transferred and not the exact byte count transmitted over the network, which would be slightly more due to the protocol overhead.

Transfer counts are only accumulated for data packets from the ring buffer, packets transferred as part of information requests (stream lists, etc.) are not included.