NAME
WebService::Raygun::Message - A message to be sent to raygun.io
SYNOPSIS
use WebService::Raygun::Message;
# The Raygun.io API expects something like this:
my $data = {
'occurredOn' => string, # ISO 8601
'details' => {
'machineName' => string,
'version' => string,
'client' => {
'name' => string,
'version' => string,
'clientUrl' => string
},
'error' => {
'innerError' => string,
'data' => object,
'className' => string,
'message' => string,
'stackTrace' => [
{
'lineNumber' => number,
'className' => string,
'fileName' => string,
'methodName' => string,
}
]
},
'environment' => {
'processorCount' => number,
'osVersion' => string,
'windowBoundsWidth' => number,
'windowBoundsHeight' => number,
'resolutionScale' => string,
'currentOrientation' => string,
'cpu' => string,
'packageVersion' => string,
'architecture' => string,
'totalPhysicalMemory' => number,
'availablePhysicalMemory' => number,
'totalVirtualMemory' => number,
'availableVirtualMemory' => number,
'diskSpaceFree' => array,
'deviceName' => string,
'locale' => string,
},
'tags' => array,
'userCustomData' => object,
'request' => {
'hostName' => string,
'url' => string,
'httpMethod' => string,
'iPAddress' => string,
'queryString' => object,
'form' => object,
'headers' => object,
'rawData' => object,
},
'response' => {
'statusCode' => number
},
'user' => {
'identifier' => string
},
'context' => {
'identifier' => string
}
}
};
DESCRIPTION
This module assembles a request for raygun.io.
INTERFACE
occurred_on
Must be a valid datetime with timezone offset; eg 2014-06-30T04:30:30+100. Defaults to current time.
error
An instance of WebService::Raygun::Message::Error. The module uses Mouse type constraints to coerce the argument into a stacktrace object. This is a bit experimental and currently Moose::Exception, Mojo::Exception are supported.
user
Can be an email address or some other identifier. Note that if an email address is used, raygun.io will try to find a suitable Gravatar to display in the results.
request
See WebService::Raygun::Message::Request.
environment
See WebService::Raygun::Message::Environment.
user_custom_data
Some data from the user.
tags
client
version
machine_name
response_status_code
Default is 200.
prepare_raygun
Converts a Perl hash to JSON.