Packages

t

com.twitter.server

TwitterServer

trait TwitterServer extends App with Slf4jBridge with Logging with Stats with Linters with DtabFlags with Hooks with AdminHttpServer with Lifecycle

Twitter Server defines a template from which servers at Twitter are built. It provides common application components such as an administrative HTTP server, tracing, stats, etc. These features are wired in correctly for use in production at Twitter.

For DI (Dependency Injection) Twitter Server uses self-typed Scala traits that might be mixed in the TwitterServer trait. The common practice is to define self-typed traits against the App trait as shown below.

import com.twitter.app.App
import com.twitter.server.TwitterServer

trait MyModule { self: App =>
  // module logic
}

object MyApp extends TwitterServer with MyModule {
  // app logic
}

Note: the Slf4jBridge trait MUST be defined first to properly bridge legacy logging APIs.

Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TwitterServer
  2. Lifecycle
  3. AdminHttpServer
  4. Hooks
  5. DtabFlags
  6. Linters
  7. Stats
  8. Logging
  9. Slf4jBridge
  10. App
  11. Lifecycle
  12. CloseOnceAwaitably
  13. CloseOnceAwaitably0
  14. Awaitable
  15. ClosableOnce
  16. CloseOnce
  17. Closable
  18. AnyRef
  19. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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 val MinGrace: Duration
    Definition Classes
    App
  5. def addAdminRoute(route: Route): Unit

    Add a Route into admin http server.

    Add a Route into admin http server.

    Definition Classes
    AdminHttpServer
  6. def addAdminRoutes(newRoutes: Seq[Route]): Unit

    Add a collection of Routes into admin http server.

    Add a collection of Routes into admin http server.

    Definition Classes
    AdminHttpServer
  7. def addDtabs(): Unit
    Definition Classes
    DtabFlags
  8. def adminBoundAddress: InetSocketAddress

    The address to which the Admin HTTP server is bound.

    The address to which the Admin HTTP server is bound.

    Definition Classes
    AdminHttpServer
  9. val adminHttpServer: ListeningServer
    Attributes
    protected
    Definition Classes
    AdminHttpServer
    Annotations
    @volatile()
  10. val adminPort: Flag[InetSocketAddress]
    Definition Classes
    AdminHttpServer
  11. def allowUndefinedFlags: Boolean
    Attributes
    protected
    Definition Classes
    App
  12. def args: Array[String]
    Definition Classes
    App
  13. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  14. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  15. final def close(deadline: Time): Future[Unit]
    Definition Classes
    CloseOnce → Closable
  16. def close(after: Duration): Future[Unit]
    Definition Classes
    Closable
  17. final def close(): Future[Unit]
    Definition Classes
    Closable
  18. final def closeFuture: Future[Unit]
    Attributes
    protected
    Definition Classes
    CloseOnce
  19. final def closeOnExit(closable: Closable): Unit
    Definition Classes
    App
  20. final def closeOnExitLast(closable: Closable): Unit
    Definition Classes
    App
  21. def closeOnce(deadline: Time): Future[Unit]
    Attributes
    protected
    Definition Classes
    App → CloseOnce
  22. def configureAdminHttpServer(server: Server): Server

    This method allows for further configuration of the http server for parameters not exposed by this trait or for overriding defaults provided herein, e.g.,

    This method allows for further configuration of the http server for parameters not exposed by this trait or for overriding defaults provided herein, e.g.,

    override def configureAdminHttpServer(server: Http.Server): Http.Server =
     server.withMonitor(myMonitor)
    server

    - the com.twitter.finagle.Http.Server to configure.

    returns

    a configured Http.Server.

    Attributes
    protected
    Definition Classes
    AdminHttpServer
  23. def debug(marker: Marker, message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  24. def debug(message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  25. def debug(marker: Marker, message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  26. def debug(message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  27. def debugResult[T](message: ⇒ String)(fn: ⇒ T): T
    Attributes
    protected[this]
    Definition Classes
    Logging
  28. def defaultAdminPort: Int
    Definition Classes
    AdminHttpServer
  29. def defaultCloseGracePeriod: Duration
    Definition Classes
    App
  30. def disableAdminHttpServer: Boolean

    If true, the Twitter-Server admin server will be disabled.

    If true, the Twitter-Server admin server will be disabled. Note: Disabling the admin server allows services to be deployed into environments where only a single port is allowed

    Attributes
    protected
    Definition Classes
    AdminHttpServer
  31. val dtabAddBaseFlag: Flag[Dtab]
    Definition Classes
    DtabFlags
  32. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  33. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  34. def error(marker: Marker, message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  35. def error(message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  36. def error(marker: Marker, message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  37. def error(message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  38. def errorResult[T](message: ⇒ String)(fn: ⇒ T): T
    Attributes
    protected[this]
    Definition Classes
    Logging
  39. def exitOnError(reason: String, details: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    App
  40. def exitOnError(reason: String): Unit
    Attributes
    protected
    Definition Classes
    App
  41. def exitOnError(throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    App
  42. def failfastOnFlagsNotParsed: Boolean
    Attributes
    protected
    Definition Classes
    App
  43. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  44. final def flag: Flags
    Definition Classes
    App
  45. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  46. val group: String
    Definition Classes
    Lifecycle
  47. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  48. def includeGlobalFlags: Boolean
    Attributes
    protected
    Definition Classes
    App
  49. def info(marker: Marker, message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  50. def info(message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  51. def info(marker: Marker, message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  52. def info(message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  53. def infoResult[T](message: ⇒ String)(fn: ⇒ T): T
    Attributes
    protected[this]
    Definition Classes
    Logging
  54. final def init(f: ⇒ Unit): Unit
    Attributes
    protected
    Definition Classes
    App
  55. final def isClosed: Boolean
    Definition Classes
    CloseOnce
  56. def isDebugEnabled(marker: Marker): Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  57. def isDebugEnabled: Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  58. def isErrorEnabled(marker: Marker): Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  59. def isErrorEnabled: Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  60. def isInfoEnabled(marker: Marker): Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  61. def isInfoEnabled: Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  62. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  63. def isReady(implicit permit: CanAwait): Boolean
    Definition Classes
    CloseOnceAwaitably0 → Awaitable
  64. def isTraceEnabled(marker: Marker): Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  65. def isTraceEnabled: Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  66. def isWarnEnabled(marker: Marker): Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  67. def isWarnEnabled: Boolean
    Attributes
    protected[this]
    Definition Classes
    Logging
  68. def libraryName: String

    Name used for registration in the com.twitter.util.registry.Library

    Name used for registration in the com.twitter.util.registry.Library

    returns

    library name to register in the Library registry.

    Attributes
    protected
    Definition Classes
    AdminHttpServer
  69. def linterRules: Seq[Rule]

    Exposed for testing

    Exposed for testing

    Definition Classes
    Linters
  70. def loadServiceBindings: Seq[Binding[_]]
    Attributes
    protected[this]
    Definition Classes
    App
  71. final def logger: Logger
    Attributes
    protected[this]
    Definition Classes
    Logging
  72. final def loggerName: String
    Attributes
    protected[this]
    Definition Classes
    Logging
  73. final def main(args: Array[String]): Unit
    Definition Classes
    App
  74. def name: String
    Definition Classes
    App
  75. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  76. final def nonExitingMain(args: Array[String]): Unit
    Definition Classes
    App
  77. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  78. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  79. final def observe(event: Event)(f: ⇒ Unit): Unit
    Attributes
    protected
    Definition Classes
    Lifecycle
  80. final def observeFuture(event: Event)(f: Future[Unit]): Future[Unit]
    Attributes
    protected
    Definition Classes
    Lifecycle
  81. final def onExit(f: ⇒ Unit): Unit
    Attributes
    protected
    Definition Classes
    App
  82. final def onExitLast(f: ⇒ Unit): Unit
    Attributes
    protected
    Definition Classes
    App
  83. def parseArgs(args: Array[String]): Unit
    Attributes
    protected[this]
    Definition Classes
    App
  84. final def postmain(f: ⇒ Unit): Unit
    Attributes
    protected
    Definition Classes
    App
  85. final def premain(f: ⇒ Unit): Unit
    Attributes
    protected
    Definition Classes
    App
  86. def ready(timeout: Duration)(implicit permit: CanAwait): TwitterServer.this.type
    Definition Classes
    CloseOnceAwaitably0 → Awaitable
  87. def result(timeout: Duration)(implicit permit: CanAwait): Unit
    Definition Classes
    CloseOnceAwaitably0 → Awaitable
  88. def routes: Seq[Route]

    Get all Routes of admin http server.

    Get all Routes of admin http server.

    Definition Classes
    AdminHttpServer
  89. final def runOnExit(runnable: Runnable): Unit
    Attributes
    protected
    Definition Classes
    App
  90. final def runOnExitLast(runnable: Runnable): Unit
    Attributes
    protected
    Definition Classes
    App
  91. lazy val shutdownTimer: Timer

    Use the Finagle DefaultTimer

    Use the Finagle DefaultTimer

    Attributes
    protected
    Definition Classes
    TwitterServer → App
  92. def startupCompletionEvent: Event
    Attributes
    protected[twitter]
  93. def statsReceiver: StatsReceiver

    This returns the global LoadedStatsReceiver instance.

    This returns the global LoadedStatsReceiver instance.

    returns

    a StatsReceiver instance.

    Definition Classes
    Stats
    See also

    com.twitter.finagle.stats.LoadedStatsReceiver

  94. final val suppressGracefulShutdownErrors: Boolean

    Don't let applications opt-out

    Don't let applications opt-out

    Definition Classes
    TwitterServer → App
  95. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  96. def toString(): String
    Definition Classes
    AnyRef → Any
  97. def trace(marker: Marker, message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  98. def trace(message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  99. def trace(marker: Marker, message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  100. def trace(message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  101. def traceResult[T](message: ⇒ String)(fn: ⇒ T): T
    Attributes
    protected[this]
    Definition Classes
    Logging
  102. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  103. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  104. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  105. def warn(marker: Marker, message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  106. def warn(message: ⇒ Any, cause: Throwable): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  107. def warn(marker: Marker, message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  108. def warn(message: ⇒ Any): Unit
    Attributes
    protected[this]
    Definition Classes
    Logging
  109. def warnResult[T](message: ⇒ String)(fn: ⇒ T): T
    Attributes
    protected[this]
    Definition Classes
    Logging

Inherited from Lifecycle

Inherited from AdminHttpServer

Inherited from Hooks

Inherited from DtabFlags

Inherited from Linters

Inherited from Stats

Inherited from Logging

Inherited from Slf4jBridge

Inherited from App

Inherited from app.Lifecycle

Inherited from CloseOnceAwaitably

Inherited from CloseOnceAwaitably0[Unit]

Inherited from Awaitable[Unit]

Inherited from ClosableOnce

Inherited from CloseOnce

Inherited from Closable

Inherited from AnyRef

Inherited from Any

Ungrouped