Skip to content

Commit

Permalink
Upgraded Ostrich to 4.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
timperrett committed Apr 17, 2011
1 parent d8fe282 commit 2bb980e
Show file tree
Hide file tree
Showing 4 changed files with 80 additions and 57 deletions.
54 changes: 38 additions & 16 deletions chapter-15/src/main/scala/bootstrap/liftweb/Boot.scala
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ import net.liftweb.mapper.{StandardDBVendor,MapperRules,DefaultConnectionIdentif
import sample.model.{User,ExtendedSession}

// jmx monitoring
import com.twitter.ostrich.{RuntimeEnvironment, ServiceTracker, Stats, StatsMBean, Service}
import net.lag.configgy.Config
// import com.twitter.ostrich.{RuntimeEnvironment, ServiceTracker, Stats, StatsMBean, Service}
// import net.lag.configgy.Config

class Boot extends LazyLoggable {
def boot {
Expand Down Expand Up @@ -48,20 +48,24 @@ class Boot extends LazyLoggable {
case (Props.RunModes.Production, _, exception) => RedirectResponse("/error")
}

StatsMBean("manning.lia.sample")
/**
* Startup and shutdown the Ostrich server
* when the application cycles
*/
OstrichWebAdmin.service

LiftRules.unloadHooks.append(
() => OstrichWebAdmin.service.foreach(_.shutdown))

import com.twitter.ostrich._,
admin.ServiceTracker,
stats.Stats

// jmx monitoring
//if (Props.getBool("jmx.enable", false))
logger.info("Booting Ostrich...")
val runtime = new RuntimeEnvironment(getClass)
var config = new Config
config("admin_http_port") = 9990
ServiceTracker.register(RequestTimer)
ServiceTracker.startAdmin(config, runtime)

// unfortunatly there is an issue with making a !? call here and
// ostrich doesnt like it. I'll look into it.
Stats.makeGauge("current_session_count"){
Stats.addGauge("current_session_count"){
SessionMonitor.count.toDouble
}

Expand All @@ -82,18 +86,35 @@ class Boot extends LazyLoggable {
Props.get("db.url").openOr("jdbc:h2:mem:chapter_fifteen;DB_CLOSE_DELAY=-1"),
Props.get("db.user"),
Props.get("db.pass"))

import com.twitter.ostrich._,
admin.{RuntimeEnvironment},
admin.config.{StatsConfig,AdminServiceConfig,TimeSeriesCollectorConfig}

object OstrichWebAdmin extends AdminServiceConfig {
httpPort = 9990
statsNodes = new StatsConfig {
reporters = new TimeSeriesCollectorConfig
}
lazy val service =
super.apply()(new RuntimeEnvironment(this))
}
}

// case object GimmehCount
// final case object GimmehCount
object SessionMonitor extends LiftActor {
private var sessionSize = 0
protected def messageHandler = {
case SessionWatcherInfo(sessions) => sessionSize = sessions.size
//case GimmehCount => sessionSize
// case GimmehCount => sessionSize.toDouble
}
def count = sessionSize
}

import com.twitter.ostrich._,
stats.Stats,
admin.Service

object RequestTimer extends Service {
object startTime extends RequestVar(0L)

Expand All @@ -103,8 +124,9 @@ object RequestTimer extends Service {

def endServicing(session: LiftSession, req: Req, response: Box[LiftResponse]) {
val delta = Helpers.millis - startTime.is
Stats.addTiming("request_duration", delta.toInt)
Stats.addMetric("request_duration", delta.toInt)
}
def shutdown(){}
def quiesce(){}
override def start(){}
override def shutdown(){}
override def quiesce(){}
}
2 changes: 1 addition & 1 deletion chapter-15/src/main/scala/sample/model/User.scala
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import scala.xml.{NodeSeq,Node}
import net.liftweb.common.{Full,Box,Empty,Failure,Loggable}
import net.liftweb.sitemap.Loc._
import net.liftweb.mapper._
import com.twitter.ostrich.Stats
import com.twitter.ostrich.stats.Stats

object User extends User
with KeyedMetaMapper[Long, User]
Expand Down
77 changes: 38 additions & 39 deletions lift-in-action.tmproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>currentDocument</key>
<string>chapter-8/src/main/scala/sample/lib/BasicDispatchUsage.scala</string>
<string>chapter-6/src/main/webapp/snippets/lazy_loading.html</string>
<key>documents</key>
<array>
<dict>
Expand Down Expand Up @@ -35,119 +35,118 @@
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>chapter-6/src/main/scala/bootstrap/liftweb/Boot.scala</key>
<key>chapter-6/src/main/scala/sample/snippet/LazyLoading.scala</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>48</integer>
<integer>0</integer>
<key>line</key>
<integer>5</integer>
<integer>14</integer>
</dict>
<key>columnSelection</key>
<false/>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
<key>selectFrom</key>
<dict>
<key>column</key>
<integer>45</integer>
<key>line</key>
<integer>5</integer>
</dict>
<key>selectTo</key>
</dict>
<key>chapter-6/src/main/webapp/snippets/intermediate_example.html</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>70</integer>
<integer>0</integer>
<key>line</key>
<integer>5</integer>
<integer>3</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>chapter-6/src/main/webapp/index.html</key>
<key>chapter-6/src/main/webapp/snippets/lazy_loading.html</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>45</integer>
<integer>16</integer>
<key>line</key>
<integer>1</integer>
<integer>11</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>chapter-6/src/main/webapp/templates-hidden/single_bind.html</key>
<key>chapter-8/src/main/scala/sample/lib/RestExampleAdvanced.scala</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<integer>2</integer>
<key>line</key>
<integer>14</integer>
<integer>28</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>chapter-8/src/main/scala/sample/lib/BasicDispatchUsage.scala</key>
<key>chapter-9/src/main/scala/bootstrap/liftweb/Boot.scala</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<integer>4</integer>
<key>line</key>
<integer>9</integer>
<integer>11</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>chapter-8/src/main/scala/sample/lib/RestExampleAdvanced.scala</key>
<key>chapter-9/src/main/scala/sample/comet/Clock.scala</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>2</integer>
<integer>0</integer>
<key>line</key>
<integer>28</integer>
<integer>22</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>2</integer>
<integer>0</integer>
</dict>
<key>chapter-9/src/main/scala/sample/snippet/BasicAJAX.scala</key>
<key>chapter-9/src/main/scala/sample/comet/RockPaperScissors.scala</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>23</integer>
<integer>40</integer>
<key>line</key>
<integer>16</integer>
<integer>137</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
<integer>112</integer>
</dict>
</dict>
<key>openDocuments</key>
<array>
<string>chapter-6/src/main/scala/bootstrap/liftweb/Boot.scala</string>
<string>chapter-6/src/main/webapp/index.html</string>
<string>chapter-6/src/main/webapp/templates-hidden/single_bind.html</string>
<string>chapter-9/src/main/scala/sample/snippet/BasicAJAX.scala</string>
<string>chapter-8/src/main/scala/sample/lib/BasicDispatchUsage.scala</string>
<string>chapter-8/src/main/scala/sample/lib/RestExampleAdvanced.scala</string>
<string>chapter-9/src/main/scala/bootstrap/liftweb/Boot.scala</string>
<string>chapter-9/src/main/scala/sample/comet/Clock.scala</string>
<string>chapter-9/src/main/scala/sample/comet/RockPaperScissors.scala</string>
<string>chapter-6/src/main/scala/sample/snippet/LazyLoading.scala</string>
<string>chapter-6/src/main/webapp/snippets/lazy_loading.html</string>
<string>chapter-6/src/main/webapp/snippets/intermediate_example.html</string>
</array>
<key>showFileHierarchyDrawer</key>
<true/>
<key>windowFrame</key>
<string>{{620, 58}, {805, 820}}</string>
<string>{{348, 181}, {876, 673}}</string>
</dict>
</plist>
4 changes: 3 additions & 1 deletion project/build/LiftInActionProject.scala
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ class LiftInActionProject(info: ProjectInfo) extends ParentProject(info) with Id
extends ProjectDefaults(info)
with DatabaseDrivers
{
val ostrich = "com.twitter" % "ostrich" % "2.3.6" % "compile"
val ostrich = "com.twitter" % "ostrich" % "4.1.0" % "compile"
val mapper = "net.liftweb" %% "lift-mapper" % liftVersion % "compile"
}

Expand Down Expand Up @@ -194,6 +194,8 @@ class LiftInActionProject(info: ProjectInfo) extends ParentProject(info) with Id
import Repositories._
// module Configurations
lazy val localMavenRepo = MavenLocal
lazy val avalonModuleConfig = ModuleConfiguration("avalon-framework", MavenCentral)
lazy val logkitModuleConfig = ModuleConfiguration("logkit", MavenCentral)
lazy val liftModuleConfig = ModuleConfiguration("net.liftweb", ScalaToolsReleases)
lazy val scalaTestModuleConfig = ModuleConfiguration("org.scalatest", ScalaToolsReleases)
lazy val specsModuleConfig = ModuleConfiguration("org.scala-tools.testing", ScalaToolsReleases)
Expand Down

0 comments on commit 2bb980e

Please sign in to comment.