-
-
Notifications
You must be signed in to change notification settings - Fork 166
Home
Nebula Logger is an open source logging tool for Salesforce. It's designed for Salesforce admins, developers & architects, to aid in development, troubleshooting & monitoring of your Salesforce environments.
-
A unified logging tool that supports easily adding log entries across the Salesforce platform, using:
- Apex: classes, triggers, and anonymous Apex scripts
- Lightning Components: lightning web components (LWCs) & aura components
- Flow & Process Builder: any Flow type that supports invocable actions
- OmniStudio: omniscripts and omni integration procedures
-
Built with an event-driven pub/sub messaging architecture, using
LogEntryEvent__e
platform events. For more details on leveraging platform events, see the Platform Events Developer Guide site -
Actionable observability data about your Salesforce org, available directly in your Salesforce org via the 5 included custom objects
Log__c
LogEntry__c
LogEntryTag__c
LoggerTag__c
LoggerScenario__c
-
Customizable logging settings for different users & profiles, using the included
LoggerSettings__c
custom hierarchy settings object -
Easily scales in highly complex Salesforce orgs with large data volumes, using global feature flags in
LoggerParameter__mdt
-
Automatic data masking of sensitive data, using rules configured in the
LogEntryDataMaskRule__mdt
custom metadata type object -
View related
LogEntry__c
records on any Lightning record page in App Builder by adding the 'Related Log Entries' component (relatedLogEntries
LWC) -
Dynamically assign tags to
Log__c
andLogEntry__c
records for tagging/labeling your logs -
Extendable with a built-in plugin framework: easily build or install plugins that enhance Nebula Logger, using Apex or Flow (not currently available in the managed package)
-
ISVs & package developers have several options for leveraging Nebula Logger in your own packages
-
Optional Dependency: dynamically leverage Nebula Logger in your own packages - when it's available in a subscriber's org - using Apex's
Callable
interface and Nebula Logger's included implementationCallableLogger
(requiresv4.14.10
of Nebula Logger or newer) -
Hard Dependency: add either Nebula Logger's unlocked (no namespace) package or its managed package (
Nebula
namespace) as a dependency for your package to ensure customers always have a version of Nebula Logger installed - No Dependency: Bundle Nebula Logger's metadata into your own project - all of Nebula Logger's metadata is fully open source & freely available. This approach provides with full control of what's included in your own app/project.
-
Optional Dependency: dynamically leverage Nebula Logger in your own packages - when it's available in a subscriber's org - using Apex's
Learn more about the design and history of the project on the Joys Of Apex:
- Assigning Permission Sets to Users
- Configuring Global Feature Flags
- Configuring Profile & User-Specific Settings
- Configuring Data Mask Rules
Manual Instrumentation
- Logging in Apex
- Logging in Flow & Process Builder
- Logging in Lightning Web Components & Aura Components
- Logging in OmniStudio
- Logging in OpenTelemetry (OTEL) REST API
ISVs & Package Dependencies
- Overview
- Optionally Use Nebula Logger (When Available) with
Callable
Interface - Require Nebula Logger with Strongly-Coupled Package Dependency
Troubleshooting
Pub/Sub with Platform Events
Persisted Data with Custom Objects
- Logger Console app
- Assigning & Managing Logs
- Using 'View Related Log Entries' Component on Record Pages
- Deleting Old Logs
Official Plugins