Open ArupMukherjee opened 10 years ago
Hi Arup,
Do you mind posting your error?
On Wed, Jan 15, 2014 at 8:01 AM, ArupMukherjee notifications@github.comwrote:
Hi,
I am new to Scala and SBT and used sbt-assembly plugin along with sbt to deploy metrics_storm and adding the .jar file generated to the class path of storm. However, now when I start storm using ./storm nimbus I get a classpath contains multiple SLF4J bindings error. My question is: Is there some variant of storm that I need to be using to get around the multiple bindings error? Also, if the variant of storm is not an issue, could you give me some hints as to get around the multiple slf4j issue.
Thanks in advance..
Arup
— Reply to this email directly or view it on GitHubhttps://github.com/ooyala/metrics_storm/issues/5 .
Evan Chan Staff Engineer ev@ooyala.com |
http://www.ooyala.com/ http://www.facebook.com/ooyalahttp://www.linkedin.com/company/ooyalahttp://www.twitter.com/ooyala
Hello Evan,
I switched to version 0.8.2 of Storm to be compatible with metrics_storm. I used sbt_assembly to build the jar file which I added to the classpath of storm. I added the metrics_storm-assembly-0.0.7-SNAPSHOT.jar file to the classpath. The build.sbt file has the library dependencies as folows: libraryDependencies ++= Seq( "org.slf4j" % "slf4j-api" % "1.5.8", "org.slf4j" % "slf4j-log4j12" % "1.5.8", "com.yammer.metrics" % "metrics-core" % "2.1.2", "com.yammer.metrics" % "metrics-servlet" % "2.1.2", "javax.servlet" % "servlet-api" % "2.5" )
The error I am getting is as follows:
SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/arup/storm-0.8.2/lib/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/home/arup/storm-0.8.2/lib/metrics_storm-assembly-0.0.7-SNAPSHOT.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: The requested version 1.5.8 by your slf4j binding is not compatible with [1.6]
Thanks, Arup
Arup, try upgrading to slf4j 1.6.4. It sounds like the primary problem is incompatible SLF4J versions.
On Wed, Jan 15, 2014 at 9:29 AM, ArupMukherjee notifications@github.comwrote:
Hello Evan,
I switched to version 0.8.2 of Storm to be compatible with metrics_storm. I used sbt_assembly to build the jar file which I added to the classpath of storm. I added the metrics_storm-assembly-0.0.7-SNAPSHOT.jar file to the classpath. The build.sbt file has the library dependencies as folows: libraryDependencies ++= Seq( "org.slf4j" % "slf4j-api" % "1.5.8", "org.slf4j" % "slf4j-log4j12" % "1.5.8", "com.yammer.metrics" % "metrics-core" % "2.1.2", "com.yammer.metrics" % "metrics-servlet" % "2.1.2", "javax.servlet" % "servlet-api" % "2.5" )
The error I am getting is as follows:
SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/arup/storm-0.8.2/lib/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/home/arup/storm-0.8.2/lib/metrics_storm-assembly-0.0.7-SNAPSHOT.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: The requested version 1.5.8 by your slf4j binding is not compatible with [1.6]
Thanks, Arup
— Reply to this email directly or view it on GitHubhttps://github.com/ooyala/metrics_storm/issues/5#issuecomment-32388206 .
Evan Chan Staff Engineer ev@ooyala.com |
http://www.ooyala.com/ http://www.facebook.com/ooyalahttp://www.linkedin.com/company/ooyalahttp://www.twitter.com/ooyala
Evan,
I still get the same error
SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/arup/storm-0.8.2/lib/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/home/arup/storm-0.8.2/lib/metrics_storm-assembly-0.0.7-SNAPSHOT.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: The requested version 1.5.8 by your slf4j binding is not compatible with [1.6]
My sbt file looks as follows:
libraryDependencies ++= Seq( "org.slf4j" % "slf4j-api" % "1.6.4", "org.slf4j" % "slf4j-log4j12" % "1.6.4", "com.yammer.metrics" % "metrics-core" % "2.1.2", "com.yammer.metrics" % "metrics-servlet" % "2.1.2", "javax.servlet" % "servlet-api" % "2.5" )
My library structure for storm 0.8.2 looks as follows:
├── asm-4.0.jar ├── carbonite-1.5.0.jar ├── clj-time-0.4.1.jar ├── clojure-1.4.0.jar ├── clout-1.0.1.jar ├── commons-codec-1.4.jar ├── commons-exec-1.1.jar ├── commons-fileupload-1.2.1.jar ├── commons-io-1.4.jar ├── commons-lang-2.5.jar ├── commons-logging-1.1.1.jar ├── compojure-1.1.3.jar ├── core.incubator-0.1.0.jar ├── curator-client-1.0.1.jar ├── curator-framework-1.0.1.jar ├── disruptor-2.10.1.jar ├── guava-13.0.jar ├── hiccup-0.3.6.jar ├── httpclient-4.1.1.jar ├── httpcore-4.1.jar ├── jetty-6.1.26.jar ├── jetty-util-6.1.26.jar ├── jgrapht-0.8.3.jar ├── jline-0.9.94.jar ├── joda-time-2.0.jar ├── json-simple-1.1.jar ├── junit-3.8.1.jar ├── jzmq-2.1.0.jar ├── kryo-2.17.jar ├── libthrift7-0.7.0.jar ├── log4j-1.2.16.jar ├── math.numeric-tower-0.0.1.jar ├── metrics_storm-assembly-0.0.7-SNAPSHOT.jar ├── minlog-1.2.jar ├── objenesis-1.2.jar ├── reflectasm-1.07-shaded.jar ├── ring-core-1.1.5.jar ├── ring-jetty-adapter-0.3.11.jar ├── ring-servlet-0.3.11.jar ├── servlet-api-2.5-20081211.jar ├── servlet-api-2.5.jar ├── slf4j-api-1.5.8.jar ├── slf4j-log4j12-1.5.8.jar ├── snakeyaml-1.9.jar ├── tools.cli-0.2.2.jar ├── tools.logging-0.2.3.jar ├── tools.macro-0.1.0.jar └── zookeeper-3.3.3.jar
Hm, I'm not quite sure, but somebody is including SLF4J 1.6.x in the classpath. It seems like Storm 0.8.2 is still using 1.5.8, so the old code should have been working.
I actually have been warnings like these and see that SLF4J logging still works fine, but I believe it is still a version conflict issue.
On Wed, Jan 15, 2014 at 11:40 AM, ArupMukherjee notifications@github.comwrote:
Evan,
I still get the same error
SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/arup/storm-0.8.2/lib/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/home/arup/storm-0.8.2/lib/metrics_storm-assembly-0.0.7-SNAPSHOT.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: The requested version 1.5.8 by your slf4j binding is not compatible with [1.6]
My sbt file looks as follows:
libraryDependencies ++= Seq( "org.slf4j" % "slf4j-api" % "1.6.4", "org.slf4j" % "slf4j-log4j12" % "1.6.4",
"com.yammer.metrics" % "metrics-core" % "2.1.2", "com.yammer.metrics" % "metrics-servlet" % "2.1.2", "javax.servlet" % "servlet-api" % "2.5" )
My library structure for storm 0.8.2 looks as follows:
├── asm-4.0.jar ├── carbonite-1.5.0.jar ├── clj-time-0.4.1.jar ├── clojure-1.4.0.jar ├── clout-1.0.1.jar ├── commons-codec-1.4.jar ├── commons-exec-1.1.jar ├── commons-fileupload-1.2.1.jar ├── commons-io-1.4.jar ├── commons-lang-2.5.jar ├── commons-logging-1.1.1.jar ├── compojure-1.1.3.jar ├── core.incubator-0.1.0.jar ├── curator-client-1.0.1.jar ├── curator-framework-1.0.1.jar ├── disruptor-2.10.1.jar ├── guava-13.0.jar ├── hiccup-0.3.6.jar ├── httpclient-4.1.1.jar ├── httpcore-4.1.jar ├── jetty-6.1.26.jar ├── jetty-util-6.1.26.jar ├── jgrapht-0.8.3.jar ├── jline-0.9.94.jar ├── joda-time-2.0.jar ├── json-simple-1.1.jar ├── junit-3.8.1.jar ├── jzmq-2.1.0.jar ├── kryo-2.17.jar ├── libthrift7-0.7.0.jar ├── log4j-1.2.16.jar ├── math.numeric-tower-0.0.1.jar ├── metrics_storm-assembly-0.0.7-SNAPSHOT.jar ├── minlog-1.2.jar ├── objenesis-1.2.jar ├── reflectasm-1.07-shaded.jar ├── ring-core-1.1.5.jar ├── ring-jetty-adapter-0.3.11.jar ├── ring-servlet-0.3.11.jar ├── servlet-api-2.5-20081211.jar ├── servlet-api-2.5.jar ├── slf4j-api-1.5.8.jar ├── slf4j-log4j12-1.5.8.jar ├── snakeyaml-1.9.jar ├── tools.cli-0.2.2.jar ├── tools.logging-0.2.3.jar ├── tools.macro-0.1.0.jar └── zookeeper-3.3.3.jar
— Reply to this email directly or view it on GitHubhttps://github.com/ooyala/metrics_storm/issues/5#issuecomment-32406916 .
Evan Chan Staff Engineer ev@ooyala.com |
http://www.ooyala.com/ http://www.facebook.com/ooyalahttp://www.linkedin.com/company/ooyalahttp://www.twitter.com/ooyala
Hi,
I am new to Scala and SBT and used sbt-assembly plugin along with sbt to deploy metrics_storm and adding the .jar file generated to the class path of storm. However, now when I start storm using ./storm nimbus I get a classpath contains multiple SLF4J bindings error. My question is: Is there some variant of storm that I need to be using to get around the multiple bindings error? Also, if the variant of storm is not an issue, could you give me some hints as to get around the multiple slf4j issue.
Thanks in advance..
Arup