/sloggly

A class designed to send logs to Loggly from Salesforce

Primary LanguageApexGNU General Public License v2.0GPL-2.0

SLoggly

SLoggly is a class and an AppExchange app for logging to Loggly from Salesforce APEX classes.

Features

  • Custom settings for setting Loggly URL
  • Support for on the fly batch logging (see examples)
  • JSON logs in Loggly [1]

Setup

Configure Loggly

  • Create a new input in Loggly that is HTTPS and json

    Loggly Input

  • Copy your input URL from the input page

Configure Salesforce

  • Add Loggly to your allowed remote sites

    • Setup -> Secrity Controls -> Remote Site Settings
    • Click New Remote Site
    • Name it "Loggly"
    • Set the Remote Site URL to "https://logs.loggly.com"

    remote sites config

  • After deploying the Custom Settings object and the Loggly class file, add a new Loggly custom setting

    • Setup -> Develop -> Custom Settings
    • Click Manage next to Loggly
    • Click New
    • Name it "default" and enter in you URL from the Loggly Configuration section
    • Then set the other custom parts to the logging

    sloggly config

Examples

Single Log

Loggly.singleLog('Error Message', DateTime.now(), 'LEVEL');

Batching Logs

//Enable batching
Loggly.BATCH_LOGS=True;

//Create new instance of the Loggly class
Loggly l = new Loggly();

//Batch a message
l.add('Error Message', DateTime.now(), 'LEVEL');

//Any calls to Loggly.singleLog after setting BATCH_LOGS will automatically be batched and sent with the .flush

//Flush the message queue
l.flush();

Screenshot from Loggly

Screenshot