The most robust observability solution for Salesforce experts. Built 100% natively on the platform, and designed to work seamlessly with Apex, Lightning Components, Flow, OmniStudio, and integrations.
A class that implements the standard interface System.Callable
. This provides 2 benefits: 1. A loosely-coupled way to optionally integrate with Nebula Logger (useful for ISVs/package developers). 2. The ability to log in OmniStudio's OmniScripts & Integration Procedures.
Controller class used by the lightning web component logger
Handles adding new log entries in Flow for a particular SObject
record collection
Handles adding new log entries in Flow
Handles some common logic used by FlowLogEntry
, FlowRecordLogEntry
and FlowCollectionLogEntry
Handles adding new log entries in Flow for a particular SObject
record
Builder class that generates each LogEntryEvent__e
record
Provides the ability to generate string messages on demand, using String.format()
The core class for logging
Class used to manage any data-related operations, including database DML statements, publishing platform events via the event bus, and enqueueing queueable jobs
Selector class used for all queries that are specific to the logger engine layer
Abstract class used by trigger handlers for shared logic
Proxy class used as a middle layer between some problematic SObject Types and the rest of Nebula Logger's codebase. Each inner class maps to a corresponding SObjectType
that is difficult to work with Apex for some reason or another, such as not being mockable or creatable, or not existing in all orgs.
Class used for tracking & parsing stack traces
Controller class for lwc logBatchPurge
, used to provide metrics of Log__c
, LogEntry__c
, LogEntryTag__c
records to purge and allow user to manually run LogBatchPurger
from the UI.
Schedulable class used to schedule the batch job LogBatchPurger
Batch class used to delete old logs, based on Log__c.LogRetentionDate__c <= :System.today()
Processes LogEntryEvent__e
platform events and normalizes the data into Log__c
and LogEntry__c
records
Controller class for lwc logEntryEventStream
, used to stream Log Entries in console and Tabular view.
Dynamically returns LogEntry__c
field sets in App Builder when configuring the component RelatedLogEntries
Manages setting fields on LogEntry__c
before insert & before update
Controller class for the LWC logEntryMetadataViewer
Handles trigger events for the LogEntryTag__c
object
Manages setting fields on Log__c
before insert & before update
Selector class used for all queries that are specific to the log management layer
Manages mass deleting Log__c
records that have been selected by a user on a Log__c
list view
Controller class for the LWC logViewer
, used to provided different views on a Log__c
record
Builds and sends email notifications when internal exceptions occur within the logging system
Controller class for the LWC loggerHomeHeader
Provides details to LWCs about Logger's SObjects
, using @AuraEnabled
properties
Handles trigger events for the LoggerScenario__c
object
Controller class for lwc loggerSettings
, used to manage records in LoggerSettings__c
Handles trigger events for the LoggerTag__c
object
Controller class for the lightning web component related-log-entries
Class used by the logging system for batch contextual details
Class used to cache query results & data used in other parts of Nebula Logger
Selector class used for all queries that are specific to the configuration layer.
Maps fields values from custom fields on LogEntryEvent__e
to equivalent fields on Log__c
, LogEntry__c
, and LoggerScenario__c
Provides a centralized way to load parameters for SObject handlers & plugins, and casts the parameters to common data types
The core of the plugin framework, used to create custom Apex & Flow plugins for LoggerSObjectHandler
and LogBatchPurger
based on configurations stored in the custom metadata type LoggerPlugin_t
Provides a centralized way to load scenario rules that override behavior within Nebula Logger
Class used by the logging system for trigger contextual details
Utility class used to help with generating mock data when writing Apex tests for Nebula Logger. These methods are generic, and should work in any Salesforce org. These methods can be used when writing Apex tests for plugins.
Utility class used to mock any data-related operations for the database, event bus, and queueable jobs. These methods are generic, and should work in any Salesforce org. These methods can be used when writing Apex tests for plugins.
Utility class used to help with setting up Nebula Logger's configurations within a test context. These methods are specific to metadata implemented within Nebula Logger. These methods can be used when writing Apex tests for plugins.