0
votes

I'm trying to get www.stagemonitor.org working with Grails.

I've created a sample project here: https://github.com/jbwiv/teststagemonitor

I've added stagemonitor to grails-app/conf/BuildConfig.groovy as both a compile and runtime dependency. It indeed gets installed to my maven directory after calling "grails refresh-dependencies":

/home/user/.m2/repository/org/stagemonitor
/home/user/.m2/repository/org/stagemonitor/stagemonitor-requestmonitor
/home/user/.m2/repository/org/stagemonitor/stagemonitor-requestmonitor/0.13.0
/home/user/.m2/repository/org/stagemonitor/stagemonitor-requestmonitor/0.13.0/stagemonitor-requestmonitor-0.13.0.pom.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-requestmonitor/0.13.0/_remote.repositories
/home/user/.m2/repository/org/stagemonitor/stagemonitor-requestmonitor/0.13.0/stagemonitor-requestmonitor-0.13.0.jar
/home/user/.m2/repository/org/stagemonitor/stagemonitor-requestmonitor/0.13.0/stagemonitor-requestmonitor-0.13.0.pom
/home/user/.m2/repository/org/stagemonitor/stagemonitor-requestmonitor/0.13.0/stagemonitor-requestmonitor-0.13.0.jar.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jvm
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jvm/0.13.0
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jvm/0.13.0/stagemonitor-jvm-0.13.0.pom.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jvm/0.13.0/_remote.repositories
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jvm/0.13.0/stagemonitor-jvm-0.13.0.jar
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jvm/0.13.0/stagemonitor-jvm-0.13.0.jar.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jvm/0.13.0/stagemonitor-jvm-0.13.0.pom
/home/user/.m2/repository/org/stagemonitor/stagemonitor-javaagent
/home/user/.m2/repository/org/stagemonitor/stagemonitor-javaagent/0.13.0
/home/user/.m2/repository/org/stagemonitor/stagemonitor-javaagent/0.13.0/stagemonitor-javaagent-0.13.0.pom
/home/user/.m2/repository/org/stagemonitor/stagemonitor-javaagent/0.13.0/_remote.repositories
/home/user/.m2/repository/org/stagemonitor/stagemonitor-javaagent/0.13.0/stagemonitor-javaagent-0.13.0.jar.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-javaagent/0.13.0/stagemonitor-javaagent-0.13.0.pom.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-javaagent/0.13.0/stagemonitor-javaagent-0.13.0.jar
/home/user/.m2/repository/org/stagemonitor/stagemonitor-web
/home/user/.m2/repository/org/stagemonitor/stagemonitor-web/0.13.0
/home/user/.m2/repository/org/stagemonitor/stagemonitor-web/0.13.0/stagemonitor-web-0.13.0.jar
/home/user/.m2/repository/org/stagemonitor/stagemonitor-web/0.13.0/_remote.repositories
/home/user/.m2/repository/org/stagemonitor/stagemonitor-web/0.13.0/stagemonitor-web-0.13.0.pom.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-web/0.13.0/stagemonitor-web-0.13.0.jar.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-web/0.13.0/stagemonitor-web-0.13.0.pom
/home/user/.m2/repository/org/stagemonitor/stagemonitor-os
/home/user/.m2/repository/org/stagemonitor/stagemonitor-os/0.13.0
/home/user/.m2/repository/org/stagemonitor/stagemonitor-os/0.13.0/stagemonitor-os-0.13.0.jar.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-os/0.13.0/_remote.repositories
/home/user/.m2/repository/org/stagemonitor/stagemonitor-os/0.13.0/stagemonitor-os-0.13.0.pom.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-os/0.13.0/stagemonitor-os-0.13.0.pom
/home/user/.m2/repository/org/stagemonitor/stagemonitor-os/0.13.0/stagemonitor-os-0.13.0.jar
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jdbc
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jdbc/0.13.0
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jdbc/0.13.0/_remote.repositories
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jdbc/0.13.0/stagemonitor-jdbc-0.13.0.pom.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jdbc/0.13.0/stagemonitor-jdbc-0.13.0.jar.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jdbc/0.13.0/stagemonitor-jdbc-0.13.0.pom
/home/user/.m2/repository/org/stagemonitor/stagemonitor-jdbc/0.13.0/stagemonitor-jdbc-0.13.0.jar
/home/user/.m2/repository/org/stagemonitor/stagemonitor-core
/home/user/.m2/repository/org/stagemonitor/stagemonitor-core/0.13.0
/home/user/.m2/repository/org/stagemonitor/stagemonitor-core/0.13.0/_remote.repositories
/home/user/.m2/repository/org/stagemonitor/stagemonitor-core/0.13.0/stagemonitor-core-0.13.0.pom.sha1
/home/user/.m2/repository/org/stagemonitor/stagemonitor-core/0.13.0/stagemonitor-core-0.13.0.jar
/home/user/.m2/repository/org/stagemonitor/stagemonitor-core/0.13.0/stagemonitor-core-0.13.0.pom
/home/user/.m2/repository/org/stagemonitor/stagemonitor-core/0.13.0/stagemonitor-core-0.13.0.jar.sha1

I've also placed a stagemonitor.properties file in src/java, which at runtime gets moved to target/work/resources/stagemonitor.properties. I believe I have that properties file configured properly.

I've installed the templates Grails uses for web.xml and modified to insure metadata-complete=true is not present in the generated web.xml.

However, after grails run-app and navigating to http://localhost:8080/main/index, I get my index page as expected, but no stagemonitor icon to click and it appears no stagemonitor assets are included.

1

1 Answers

1
votes

It doesn't appear to be compatible with Grails. If you enable logging

log4j.main = {
   error 'org.codehaus.groovy.grails',
         'org.springframework',
         'org.hibernate',
         'net.sf.ehcache.hibernate'
   info 'org.stagemonitor'
}

you'll see a bunch of error stacktraces that appear to imply that the way they're using Javassist to wire in tracing code isn't compatible with Groovy and/or the AST transformations that Grails uses:

org.stagemonitor.javassist.NotFoundException: stagemonitortest.PersonController$setErrors
...
org.stagemonitor.javassist.NotFoundException: stagemonitortest.PersonController$getParams$0
...
org.stagemonitor.javassist.NotFoundException: stagemonitortest.Person$count
...
org.stagemonitor.javassist.NotFoundException: stagemonitortest.Person$list$0
...
org.stagemonitor.javassist.NotFoundException: stagemonitortest.PersonController$respond$1