Debug Log Monitoring for Salesforce Cloud (Configure)

⚙️ Configure Salesforce Debug Log Monitoring

GermainUX collects and analyzes Salesforce Debug Logs to provide detailed visibility into Apex execution and related Salesforce activity.

🔍 What Debug Log Monitoring Can Collect

Item

Apex exceptions

Custom events

Visualforce execution

Database operations

SOQL queries

Apex code-unit execution

Classes and triggers

DML operations

Transaction timing and resource usage available in the logs

This information helps teams identify why a Salesforce transaction was slow, failed, or produced an unexpected result.

📈 What Debug Log Monitoring Helps Analyze

Use Salesforce Debug Log Monitoring to:

Use

Detect Apex exceptions

Find slow classes, triggers, and code units

Analyze SOQL execution

Identify excessive or inefficient database activity

Understand Visualforce performance

Investigate failed Salesforce transactions

Examine custom diagnostic events

Correlate technical activity with affected Salesforce users

Support root-cause analysis with transaction-level evidence

Debug Log Monitoring is performed by the GermainUX Engine.

✅ Prerequisites

Before configuring Debug Log Monitoring, confirm that:

Requirement

A GermainUX Engine is deployed and running.

Salesforce monitoring has been deployed through the Salesforce Application wizard.

The Salesforce OAuth connection is active.

The integration user can access Salesforce Debug Logs.

Salesforce is configured to generate the required logs for the intended users or transactions.

The selected GermainUX Engine can reach Salesforce APIs.

The organization has sufficient Salesforce API and debug-log capacity.

For the initial integration, see Deploy GermainUX for Salesforce.

GermainUX can collect only the debug logs that Salesforce generates and makes available to the integration user. If Salesforce does not create a log for the affected execution, GermainUX cannot retrieve it.

🔁 Enable Debug Log Monitoring

Debug Log Monitoring is enabled automatically when Salesforce monitoring is deployed through the Salesforce Application wizard.

To deploy it:

  1. Open GermainUX Workspace.

  2. Open the left navigation menu.

  3. Select Wizards.

  4. Select Salesforce Application.

  5. Choose the GermainUX Engine that will monitor Salesforce.

  6. Enter the Salesforce connection and authentication settings.

  7. Expand Show Advanced if you want to customize the collection interval.

  8. Set Debug Log Monitoring Interval.

  9. Complete the wizard.

The wizard deploys three related components used by Salesforce Debug Log Monitoring.

⏰ Default Collection Frequency

By default, GermainUX retrieves Salesforce Debug Logs once per hour.

The appropriate interval depends on:

Factor

How quickly teams need the data

Debug-log volume

Number of monitored users

Number of Salesforce organizations

Salesforce API usage

GermainUX processing and storage requirements

How long Salesforce retains the logs

A shorter interval provides fresher data but increases API activity and processing. A longer interval reduces collection activity but may delay investigation and increase the risk that short-lived source data is no longer available.

🔧 Configure the Frequency During Deployment

During the initial Salesforce Application wizard:

  1. Select Show Advanced.

  2. Locate Debug Log Monitoring Interval.

    Salesforce Debug Log Monitoring Interval settings
  3. Enter the required frequency.

  4. Complete the wizard.

🔁 Change the Frequency After Deployment

To update the schedule of an existing debug-log monitor:

  1. Open GermainUX Workspace.

  2. Open the left navigation menu.

  3. Select Germain.

  4. Open the State tab.

  5. Search for:

    Type Name = Salesforce Debug Log Monitor
    
  6. Select the applicable component.

  7. Update Execution Schedule.

  8. Save the change.

  9. Repeat the review for each related Debug Log Monitoring component when applicable.

Confirm that the related components use compatible schedules and remain enabled.

⛔ Disable Debug Log Monitoring

Salesforce Debug Log Monitoring uses three related components. Disable all three to stop collection completely.

  1. Open GermainUX Workspace.

  2. Open the left navigation menu.

  3. Select Germain.

  4. Open the State tab.

  5. Search for:

    Salesforce Debug Log
    
  6. Identify all three related components for the Salesforce organization.

  7. Turn off the toggle in the Enabled column for each component.

  8. Save the changes if prompted.

    image-20230330-113103.png

Disabling only one component may leave part of the debug-log collection or processing workflow active.

Previously collected data remains available according to the configured GermainUX retention policy.

▶️ Re-enable Debug Log Monitoring

To resume collection:

  1. Return to Germain → State.

  2. Search for Salesforce Debug Log.

  3. Enable all three related components.

  4. Confirm their execution schedules.

  5. Save the configuration.

  6. Allow the next scheduled executions to complete.

📦 Data Collected From Debug Logs

The exact information depends on the logging generated by Salesforce, but GermainUX can extract and normalize the following types of evidence.

warning Exceptions

Exception data can include:

Attribute

Exception type

Message

Apex class or trigger

Method

Line number

Stack trace

Transaction context

Use this information to group recurring exceptions and identify their source.

⚡ Code-Unit Execution

Code-unit events can reveal:

Metric

Apex class execution

Trigger execution

Workflow activity

Execution duration

Parent and child activity

Transaction sequence

🔎 SOQL Execution

SOQL metrics can help identify:

Metric

Slow queries

Frequently executed queries

Repeated queries

Query duration

Query volume within a transaction

Database activity associated with slow user interactions

🗄️ Database and DML Activity

Database execution data can provide evidence about:

Operation

Inserts

Updates

Deletes

Upserts

Transaction activity

Duration

Related Apex execution

📄 Visualforce Activity

Visualforce information can help analyze:

Aspect

Page execution

Controller activity

Server-side processing

Related database operations

Exceptions

Page-performance problems

💡 Custom Events

GermainUX can collect applicable custom diagnostic events present in Salesforce Debug Logs.

Use custom events to expose application-specific details not available through standard log records.

📊 View Debug Log Data

Open:

GermainUX Workspace → Dashboards → All → Salesforce Logs

The dashboard can include:

Dashboard Item

Salesforce code-debug events

Apex exceptions

Code-unit executions

Database executions

SOQL executions

Visualforce activity

Execution duration

Trends and breakdowns

Access to individual log-derived records

Select any metric to drill through to the underlying instances and related evidence.

🏆 Salesforce Debug Log KPIs

See Salesforce Debug Log KPIs.

These KPIs can be used to identify:

KPI

Exception volume

Slow code units

Slow or excessive SOQL execution

Database-execution time

Visualforce activity

Changes following a deployment

Affected Salesforce users and workflows

🔍 Analyze a Slow or Failed Salesforce Interaction

When browser monitoring and correlation are configured, use this investigation flow:

  1. Detect a slow click, error, or failed workflow.

  2. Open an affected user instance.

  3. Review the user’s Session Replay.

  4. Identify the action and transaction time.

  5. Review related Debug Log KPIs.

  6. Inspect Apex class and trigger execution.

  7. Review SOQL and database activity.

  8. Check for exceptions.

  9. Determine which code, query, or integration contributed to the issue.

  10. Track and validate the fix.

This connects the user-visible symptom to the Salesforce execution evidence.

🔎 Configure Exception Categorization

Exception messages often contain changing values such as record IDs, timestamps, or request identifiers.

Configure categorization so technically equivalent exceptions are grouped together.

Useful category dimensions include:

Dimension

Exception type

Apex class

Trigger

Method

Message pattern

Stack-trace pattern

Expected or unexpected status

User-facing impact

See Configure Apex Exception Monitoring.

🔔 Configure Alerts

Useful alert conditions include:

Condition

A new Apex exception appears.

Exception volume exceeds a threshold.

A critical code unit fails.

SOQL duration exceeds its SLA.

Query volume approaches an operational threshold.

A Salesforce deployment causes a performance regression.

The same error affects multiple users.

A debug-log collection component fails.

No logs are collected when activity is expected.

Avoid alerting on every debug record. Alert on categorized, actionable conditions.

📋 Validate Debug Log Monitoring

After the first scheduled collection:

  1. Confirm that all three related components are enabled.

  2. Confirm that their most recent executions succeeded.

  3. Confirm that the next execution times match the intended schedule.

  4. Generate or locate a known Salesforce Debug Log in a controlled environment.

  5. Verify that GermainUX collects it.

  6. Confirm that expected code-unit, SOQL, database, exception, or Visualforce data appears.

  7. Verify the Salesforce organization and environment.

  8. Confirm timestamps and transaction details.

  9. Test any configured categorization or alert.

  10. Confirm that user-session correlation works when configured.

warning No Debug Logs Appear

If no data is collected:

  1. Confirm that Salesforce generated Debug Logs during the selected period.

  2. Verify that the correct users or transactions are being logged.

  3. Confirm that the Salesforce OAuth connection is active.

  4. Confirm that the integration user can access Debug Logs.

  5. Check that all three GermainUX Debug Log Monitoring components are enabled.

  6. Review their last execution and next scheduled execution.

  7. Confirm that the GermainUX Engine is running.

  8. Check network connectivity from the Engine to Salesforce.

  9. Review Engine logs for authorization, API, parsing, and download errors.

  10. Check Salesforce API usage and applicable limits.

  11. Verify dashboard organization, environment, and time filters.

  12. Confirm that the collection interval is short enough for the source logs to remain available.

❓ Some Transactions Are Missing

Salesforce does not necessarily produce Debug Logs for every transaction automatically.

If some transactions are missing:

Check

Confirm that Salesforce logging is active for the affected user or execution context.

Check whether the relevant logging period expired.

Verify that the log was not removed or overwritten before collection.

Confirm that log-level settings include the required detail.

Review Salesforce log-volume limits.

Verify that scheduled, batch, integration, or automated executions use the expected execution identity.

✂️ Debug Logs Are Truncated or Incomplete

Salesforce may limit the size, volume, retention, or detail of Debug Logs.

If a log lacks required evidence:

Action

Reduce unnecessary log categories.

Focus logging on the relevant users or execution period.

Reproduce the issue in a controlled non-production environment.

Confirm that the required Salesforce log levels are enabled.

Review Salesforce limits and log-generation behavior.

Supplement Debug Logs with Real-Time Event Monitoring, Apex Code Monitoring, or browser telemetry.

⚙️ Performance, Volume, and Retention

Debug logging can generate significant data and may affect Salesforce limits and GermainUX storage.

For production use:

Recommendation

Enable only the detail needed.

Target relevant users and investigations where possible.

Avoid leaving highly verbose logging enabled indefinitely.

Monitor Salesforce API consumption.

Monitor GermainUX ingestion and storage.

Configure appropriate data retention.

Review schedules after an investigation ends.

Disable unnecessary Debug Log Monitoring components.

🔒 Security and Privacy

Debug Logs can contain sensitive information, including:

Sensitive Item

Salesforce record IDs

User identifiers

Field values

Query text

Apex variables

Integration endpoints

Error messages

Internal application details

Before production enablement:

Action

Restrict access to debug-log dashboards and instances.

Configure masking, anonymization, and exclusions.

Avoid logging credentials, session IDs, or OAuth tokens.

Use a dedicated least-privilege integration account.

Apply an appropriate retention period.

Review the configuration with Salesforce security and privacy owners.

ℹ️ Get More Information

GermainUX can help determine which monitoring, analytics and automation capabilities are appropriate for your Salesforce CRM environment.

Contact GermainUX Support.

Feature Availability: 2017.1 or later