Packages

final case class ApiLoggingConfig(messagePayloads: Boolean = false, maxMethodLength: Int = ApiLoggingConfig.defaultMaxMethodLength, maxMessageLines: Int = ApiLoggingConfig.defaultMaxMessageLines, maxStringLength: Int = ApiLoggingConfig.defaultMaxStringLength, maxMetadataSize: Int = ApiLoggingConfig.defaultMaxMetadataSize, warnBeyondLoad: Option[Int] = ApiLoggingConfig.defaultWarnBeyondLoad) extends UniformCantonConfigValidation with Product with Serializable

Control logging of the ApiRequestLogger

Every GRPC service invocation is logged through the ApiRequestLogger. This allows to monitor all incoming traffic to a node (ledger API, sequencer API, admin API).

messagePayloads

Indicates whether to log message payloads. (To be disabled in production!) Also applies to metadata.

maxMethodLength

indicates how much to abbreviate the name of the called method. E.g. "com.digitalasset.canton.MyMethod" may get abbreviated to "c.d.c.MyMethod". The last token will never get abbreviated.

maxMessageLines

maximum number of lines to log for a message

maxStringLength

maximum number of characters to log for a string within a message

maxMetadataSize

maximum size of metadata

warnBeyondLoad

If API logging is turned on, emit a warning on each request if the load exceeds this threshold.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ApiLoggingConfig
  2. Serializable
  3. Product
  4. Equals
  5. UniformCantonConfigValidation
  6. CustomCantonConfigValidation
  7. CantonConfigValidation
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new ApiLoggingConfig(messagePayloads: Boolean = false, maxMethodLength: Int = ApiLoggingConfig.defaultMaxMethodLength, maxMessageLines: Int = ApiLoggingConfig.defaultMaxMessageLines, maxStringLength: Int = ApiLoggingConfig.defaultMaxStringLength, maxMetadataSize: Int = ApiLoggingConfig.defaultMaxMetadataSize, warnBeyondLoad: Option[Int] = ApiLoggingConfig.defaultWarnBeyondLoad)

    messagePayloads

    Indicates whether to log message payloads. (To be disabled in production!) Also applies to metadata.

    maxMethodLength

    indicates how much to abbreviate the name of the called method. E.g. "com.digitalasset.canton.MyMethod" may get abbreviated to "c.d.c.MyMethod". The last token will never get abbreviated.

    maxMessageLines

    maximum number of lines to log for a message

    maxStringLength

    maximum number of characters to log for a string within a message

    maxMetadataSize

    maximum size of metadata

    warnBeyondLoad

    If API logging is turned on, emit a warning on each request if the load exceeds this threshold.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  6. final def doValidate(edition: CantonEdition): Seq[CantonConfigValidationError]

    Returns all validation errors that are specific to this Canton configuration class.

    Returns all validation errors that are specific to this Canton configuration class. Successful validation should return an empty sequence.

    Validation errors of subconfigurations should not be reported by this method, but via the type class derivation.

    Attributes
    protected
    Definition Classes
    UniformCantonConfigValidationCustomCantonConfigValidation
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  9. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  10. val maxMessageLines: Int
  11. val maxMetadataSize: Int
  12. val maxMethodLength: Int
  13. val maxStringLength: Int
  14. val messagePayloads: Boolean
  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  18. lazy val printer: CantonPrettyPrinter

    Pretty printer for logging event details

  19. def productElementNames: Iterator[String]
    Definition Classes
    Product
  20. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  21. final def validate[T >: ApiLoggingConfig.this.type](edition: CantonEdition)(implicit validator: CantonConfigValidator[T]): Either[NonEmpty[Seq[CantonConfigValidationError]], Unit]
    Definition Classes
    CantonConfigValidation
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  24. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  25. val warnBeyondLoad: Option[Int]

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from CantonConfigValidation

Inherited from AnyRef

Inherited from Any

Ungrouped