com.twitter.finagle.exception

Reporter

sealed case class Reporter(client: Scribe[Future], serviceName: String, statsReceiver: StatsReceiver, sourceAddress: Option[String], clientAddress: Option[String]) extends Monitor with Product with Serializable

An implementation of ExceptionReceiver custom to the chickadee reporting service.

Optionally logs stats to a statsReceiver if desired.

Note that this implementation does not guarantee that a logged exception will be received by the configured scribe endpoint because it just drops a failed message and does not retry. This is because it is intended to log to a local (i.e. on the same machine) scribe daemon, in which case there should be no network failure. If there is failure in this case, something else is very wrong!

Linear Supertypes
Serializable, Serializable, Product, Equals, Monitor, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. Reporter
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. Monitor
  7. AnyRef
  8. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Reporter(client: Scribe[Future], serviceName: String, statsReceiver: StatsReceiver = ..., sourceAddress: Option[String] = ..., clientAddress: Option[String] = scala.None)

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

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

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def andThen(next: Monitor): Monitor

    Definition Classes
    Monitor
  7. def apply(f: ⇒ Unit): Unit

    Definition Classes
    Monitor
  8. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  9. def canEqual(arg0: Any): Boolean

    Definition Classes
    Reporter → Equals
  10. val client: Scribe[Future]

  11. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  12. def createEntry(e: Throwable): LogEntry

    Create a default ServiceException and fold in the modifiers (i.

    Create a default ServiceException and fold in the modifiers (i.e. to add a source/client endpoint).

  13. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    Reporter → Equals → AnyRef → Any
  15. def finalize(): Unit

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

    Definition Classes
    AnyRef → Any
  17. def handle(t: Throwable): Boolean

    Log an exception to the specified scribe endpoint.

    Log an exception to the specified scribe endpoint.

    See top level comment for this class for more details on performance implications.

    Definition Classes
    Reporter → Monitor
  18. def hashCode(): Int

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

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

    Definition Classes
    AnyRef
  21. final def notify(): Unit

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

    Definition Classes
    AnyRef
  23. def orElse(next: Monitor): Monitor

    Definition Classes
    Monitor
  24. def productArity: Int

    Definition Classes
    Reporter → Product
  25. def productElement(arg0: Int): Any

    Definition Classes
    Reporter → Product
  26. def productIterator: Iterator[Any]

    Definition Classes
    Product
  27. def productPrefix: String

    Definition Classes
    Reporter → Product
  28. val serviceName: String

  29. val statsReceiver: StatsReceiver

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

    Definition Classes
    AnyRef
  31. def toString(): String

    Definition Classes
    Reporter → AnyRef → Any
  32. def tryHandle(exc: Throwable): Try[Unit]

    Attributes
    protected
    Definition Classes
    Monitor
  33. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  36. def withClient(address: InetAddress = InetAddressUtil.Loopback): Reporter

    Add a modifier to append a client address (i.

    Add a modifier to append a client address (i.e. endpoint) to a generated ServiceException.

    The endpoint string is the ip address of the host (e.g. "127.0.0.1").

  37. def withSource(address: SocketAddress): Reporter

    Add a modifier to append a source address (i.

    Add a modifier to append a source address (i.e. endpoint) to a generated ServiceException.

    The endpoint string is the ip of the host concatenated with the port of the socket (e.g. "127.0.0.1:8080"). This is retained for orthogonality of exterior interfaces. We use the host name internaly.

Deprecated Value Members

  1. def productElements: Iterator[Any]

    Definition Classes
    Product
    Annotations
    @deprecated
    Deprecated

    (Since version 2.8.0) use productIterator instead

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Monitor

Inherited from AnyRef

Inherited from Any