com.beachape.zipkin.services

ZipkinServiceLike

Related Doc: package services

trait ZipkinServiceLike extends AnyRef

Basic interface for what a ZipkinService might look like.

The ServerSpan and ClientSpan types are to allow you to use types that are richer than the normal Zipkin Span type if needed (this is useful when using with say, Brave)

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ZipkinServiceLike
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. abstract type ClientSpan

    Customisable client span type

  2. abstract type ServerSpan

    Customisable server span type

Abstract Value Members

  1. abstract def clientReceived(span: ClientSpan, annotations: (String, String)*): Future[Option[ClientSpan]]

    Creates a ClientSpan with a ClientReceived annotation that will be used to signal to the Zipkin collector that a Client Received event has occurred at the current time.This method *should* be used to also actually send the underlying Span to the Zipkin server.

    Creates a ClientSpan with a ClientReceived annotation that will be used to signal to the Zipkin collector that a Client Received event has occurred at the current time.This method *should* be used to also actually send the underlying Span to the Zipkin server.

    If annotations are provided, they will also be added.

  2. abstract def clientSent(span: Span, annotations: (String, String)*): Future[Option[ClientSpan]]

    Creates a ClientSpan with a ClientSent annotation that will later be used to signal to the Zipkin collector that a Client Sent event has occurred at the current time.

    Creates a ClientSpan with a ClientSent annotation that will later be used to signal to the Zipkin collector that a Client Sent event has occurred at the current time.

    If annotations are provided, they will also be added.

  3. abstract def clientSpanToSpan(clientSpan: ClientSpan): Span

    Provides a way of turning a custom ClientSpan back into a normal Span

  4. implicit abstract def eCtx: ExecutionContext

    The execution context provided by and used within this service for tracing purposes

  5. abstract def serverReceived(span: Span, annotations: (String, String)*): Future[Option[ServerSpan]]

    Returns a ServerSpan with a ServerReceived annotation that will later be used to signal to the Zipkin collector that a server received event has occurred at the current time.

    Returns a ServerSpan with a ServerReceived annotation that will later be used to signal to the Zipkin collector that a server received event has occurred at the current time.

    If annotations are provided, they will also be added.

  6. abstract def serverSent(span: ServerSpan, annotations: (String, String)*): Future[Option[ServerSpan]]

    Returns a ServerSpan with a ServerSent annotation that will be used to signal to the Zipkin collector that a server Sent event has occurred at the current time.

    Returns a ServerSpan with a ServerSent annotation that will be used to signal to the Zipkin collector that a server Sent event has occurred at the current time. This method *should* be used to also actually send the underlying Span to the Zipkin server.

    If annotations are provided, they will also be added.

  7. abstract def serverSpanToSpan(serverSpan: ServerSpan): Span

    Provides a way of turning a custom ServerSpan back into a normal Span

Concrete 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[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

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

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

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. def generateSpan(name: String, parent: Span): Span

    Returns a Span based on a name and a parent Span, which may or may not be used

    Returns a Span based on a name and a parent Span, which may or may not be used

    In essence, checks for a trace id on the parent Span, if it exists, uses the parent Span's trace id as the returned Span's trace id and the parent id as the returned Span's parentId.

    The returned Span is guaranteed to have a new id and the name passed.

  10. final def getClass(): Class[_]

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

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

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

    Definition Classes
    AnyRef
  14. def nextId: Long

    Returns an id

  15. final def notify(): Unit

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

    Definition Classes
    AnyRef
  17. def sendableSpan(span: Span): Boolean

    Determines if the Span is minimally sendable to Zipkin (has an id, has a trace id, and has a non-empty name)

    Determines if the Span is minimally sendable to Zipkin (has an id, has a trace id, and has a non-empty name)

    Attributes
    protected[com.beachape.zipkin.services]
  18. def spanToIdsMap(span: Span): Map[String, String]

    Turns a Span into a Map[String, String]

    Turns a Span into a Map[String, String]

    Useful turning a Span into a data structure that can be more easily serialised in order to be passed onto other systems via some kind of transport protocol.

  19. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  20. def toString(): String

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

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped