Pharos Triton
  • 🔱About Pharos Triton
  • 🏁Installing Pharos Triton
  • Apex Logging Basics
  • Common Apex Usage Patters
    • Batch Logging
    • Integration Logs
    • Apex Rest Logging
    • Full Control with TritonBuilder
  • Beyond Apex
    • LWC
    • 🔄LWC Transaction Management
    • ⚡LWC and Apex
    • 💾Platform Cache for Transactions
    • Flows
    • 〰️LWC, Apex and Flows
  • 📖Methods Reference
    • 📔Apex
      • Triton
      • TritonBuilder
      • TritonTypes
      • TritonLwc
        • ComponentLog
        • Component
        • Error
        • RuntimeInfo
      • TritonFlow
        • FlowLog
      • TritonHelper
        • PostProcessingControlsBuilder
      • LogBuilder
    • LWC
      • Triton
      • TritonBuilder
      • TritonUtils
  • Help and Support
Powered by GitBook
On this page
  • Overview
  • Log Level Methods
  • level(level)
  • category(category)
  • type(type)
  • area(area)
  • Content Methods
  • summary(summary)
  • details(details)
  • Error Handling
  • exception(error)
  • componentDetails(stack)
  • Metadata Methods
  • transactionId(transactionId)
  • componentInfo(componentInfo)
  • duration(duration)
  • timestamp(timestamp)
  • userId(userId)
  • relatedObjects(objectIds)
  • runtimeInfo(info)
  • Build Method
  • build()
  1. Methods Reference
  2. LWC

TritonBuilder

Overview

The TritonBuilder class implements a builder pattern for creating structured log entries in LWC and Aura components. It provides a fluent interface for setting various log attributes and metadata.

Log Level Methods

level(level)

  • Description: Sets the log level

  • Parameters:

    • level: {string} Log level from LEVEL enum

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().level(LEVEL.INFO);

category(category)

  • Description: Sets the log category

  • Parameters:

    • category: {string} Log category from CATEGORY enum

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().category(CATEGORY.LWC);

type(type)

  • Description: Sets the log type

  • Parameters:

    • type: {string} Log type from TYPE enum

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().type(TYPE.FRONTEND);

area(area)

  • Description: Sets the functional area

  • Parameters:

    • area: {string} Log area from AREA enum

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().area(AREA.COMMUNITY);

Content Methods

summary(summary)

  • Description: Sets the log summary message

  • Parameters:

    • summary: {string} Brief description of the log entry

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().summary('Operation completed successfully');

details(details)

  • Description: Sets detailed log information

  • Parameters:

    • details: {string} Detailed description or additional context

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().details('Detailed operation information...');

Error Handling

exception(error)

  • Description: Sets error information from a JavaScript Error object

  • Parameters:

    • error: {Error|Object} Error object to process

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().exception(new Error('Operation failed'));

componentDetails(stack)

  • Description: Extracts and sets component details from stack trace

  • Parameters:

    • stack: {string} Stack trace to process

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().componentDetails(new Error().stack);

Metadata Methods

transactionId(transactionId)

  • Description: Sets the transaction ID for log correlation

  • Parameters:

    • transactionId: {string} Transaction identifier

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().transactionId('transaction-123');

componentInfo(componentInfo)

  • Description: Sets component information

  • Parameters:

    • componentInfo: {Object} Component metadata object

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().componentInfo({
    name: 'myComponent',
    function: 'handleClick'
});

duration(duration)

  • Description: Sets execution duration

  • Parameters:

    • duration: {number} Duration in milliseconds

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().duration(150);

timestamp(timestamp)

  • Description: Sets log creation timestamp

  • Parameters:

    • timestamp: {number} Unix timestamp

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().timestamp(Date.now());

userId(userId)

  • Description: Sets the user ID associated with the log

  • Parameters:

    • userId: {string} Salesforce user ID

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().userId('005xx000001234AAA');

relatedObjects(objectIds)

  • Description: Sets related object IDs

  • Parameters:

    • objectIds: {string|string[]} Single ID or array of Salesforce object IDs

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().relatedObjects(['001xx000003DGb2AAG', '001xx000003DGb3AAG']);

runtimeInfo(info)

  • Description: Sets runtime environment information

  • Parameters:

    • info: {Object} Runtime environment details

  • Returns: {TritonBuilder} Builder instance for chaining

  • Example:

triton.makeBuilder().runtimeInfo({
    userAgent: navigator.userAgent,
    viewport: { width: window.innerWidth, height: window.innerHeight }
});

Build Method

build()

  • Description: Constructs the final log object from all set properties

  • Returns: {Object} Complete log object ready for persistence

  • Example:

const logEntry = triton.makeBuilder()
    .level(LEVEL.INFO)
    .type(TYPE.FRONTEND)
    .summary('User action completed')
    .build();
PreviousTritonNextTritonUtils

Last updated 2 months ago

📖