The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::NSCA::Client::DataPacket - Implements data packet for the NSCA protocol

VERSION

This documentation refers to Net::NSCA::Client::DataPacket version 0.001

SYNOPSIS

  use Net::NSCA::Client;
  use Net::NSCA::Client::DataPacket;

  # Create a packet from scratch
  my $packet = Net::NSCA::Client::DataPacket->new(
    hostname            => 'www.example.net,
    service_description => 'Apache',
    service_message     => 'OK - Apache running',
    service_status      => $Net::NSCA::Client::STATUS_OK,
    unix_timestamp      => $iv_timestamp,
  );

  # Create a packet recieved from over the network
  my $recieved_packet = Net::NSCA::Client::DataPacket->new($recieved_data);

DESCRIPTION

Represents the data packet used in the NSCA protocol.

CONSTRUCTOR

This is fully object-oriented, and as such before any method can be used, the constructor needs to be called to create an object to work with.

new

This will construct a new object.

new(%attributes)

%attributes is a HASH where the keys are attributes (specified in the "ATTRIBUTES" section).

new($attributes)

$attributes is a HASHREF where the keys are attributes (specified in the "ATTRIBUTES" section).

new($packet_string)

$packet_string is a string of the data packet in the network form.

ATTRIBUTES

  # Set an attribute
  $object->attribute_name($new_value);

  # Get an attribute
  my $value = $object->attribute_name;

hostname

Required

This is the host name of the host as listed in Nagios that the service belongs to.

packet_version

This is the version of the packet to be sent. A few different NSCA servers use slightly different version numbers, but the rest of the packet is the same. If not specified, this will default to 3.

service_description

Required

This is the service description as listed in Nagios of the service that this report will be listed under.

service_message

This is the message that will be given to Nagios.

service_status

This is the status of the service that will be given to Nagios. It is recommended to use one of the $STATUS_ constants provided by Net::NSCA::Client.

unix_timestamp

This is a UNIX timestamp, which is an integer specifying the number of non-leap seconds since the UNIX epoch. This will default to the current UNIX timestamp.

METHODS

to_string

This methods returns the string representation of the data packet. This string representation is what will be sent over the network.

DEPENDENCIES

AUTHOR

Douglas Christopher Wilson, <doug at somethingdoug.com>

BUGS AND LIMITATIONS

Please report any bugs or feature requests to bug-net-nsca-client at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Net-NSCA-Client. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

I highly encourage the submission of bugs and enhancements to my modules.

LICENSE AND COPYRIGHT

Copyright 2009 Douglas Christopher Wilson.

This program is free software; you can redistribute it and/or modify it under the terms of either:

  • the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version, or

  • the Artistic License version 2.0.