Object/Trait

kamon.context

Storage

Related Docs: trait Storage | package context

Permalink

object Storage

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Storage
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. class Debug extends Storage

    Permalink

    A Storage implementation that keeps track of all Contexts across all Threads in the application and exposes them through its companion object.

    A Storage implementation that keeps track of all Contexts across all Threads in the application and exposes them through its companion object. Using the Debug storage can only be enabled when the System Property "kamon.context.debug" is set to "true" (we don't allow this be discovered from configuration because it can cause initialization issues when Kamon is first initialized via instrumentation trying to access the current Context).

    This implementation is considerably less efficient than the default implementation since it is taking at least two different stack traces for every store/close operation pair. Do not use this for any reason other than debugging Context propagation issues (like, dirty Threads) in a controlled environment.

  2. trait Scope extends AnyRef

    Permalink

    Encapsulates the extend during which a Context is held by an Storage implementation.

    Encapsulates the extend during which a Context is held by an Storage implementation. Once a Scope is closed, the Context will be removed from the Storage that created the Scope.

  3. class ThreadLocal extends Storage

    Permalink

    Wrapper that implements an optimized ThreadLocal access pattern ideal for heavily used ThreadLocals.

    Wrapper that implements an optimized ThreadLocal access pattern ideal for heavily used ThreadLocals. It is faster to use a mutable holder object and always perform ThreadLocal.get() and never use ThreadLocal.set(), because the value is more likely to be found in the ThreadLocalMap direct hash slot and avoid the slow path of ThreadLocalMap.getEntryAfterMiss().

    Credit to @trask from the FastThreadLocal in glowroot. One small change is that we don't use an kamon-defined holder object as that would prevent class unloading.

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object Debug

    Permalink
  5. object ThreadLocal

    Permalink
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  18. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  19. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped