odota / parser

Replay parse server generating JSON log events from Dota 2 replay files
MIT License
119 stars 52 forks source link

I keep getting SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder" with the docker build. help plz #41

Closed drstevp closed 4 years ago

drstevp commented 4 years ago

Hi, Ive seen a few issues like this that have been closed but they all seem not to be running your docker image. Im going to try and be through here so that my steps are clear and also that it helps perhaps in you understand where my problem is.

I was able to build the docker image which i named odotaparser with command sudo docker build -t odotaparser .

I then run the container with the 5600 container port linkled to the 8000 port on localhost docker run -p 0.0.0.0:8000:5600 odotaparser

i can clearly see with netstat -ntlp that there indeed is a port 8000 open Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.1.1:53 0.0.0.0: LISTEN -
tcp 0 0 127.0.0.1:631 0.0.0.0:
LISTEN -
tcp6 0 0 ::1:631 ::: LISTEN -
tcp6 0 0 :::8000 :::
LISTEN -

I then try and send the dem file from another terminal with the command curl localhost:8000 --data-binary "/home/stevan/Workplace/junk/parser-master/5628067723_202531792.dem"

the dem file was downloaded from https://www.opendota.com/matches/5628067723

and i get the error in the docker run terminal SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. java.io.IOException: given stream does not seem to contain a valid replay at skadistats.clarity.source.Source.readEngineType(Source.java:165) at skadistats.clarity.processor.runner.SimpleRunner.(SimpleRunner.java:31) at opendota.Parse.(Parse.java:180) at opendota.Main$MyHandler.handle(Main.java:27) at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:79) at sun.net.httpserver.AuthFilter.doFilter(AuthFilter.java:83) at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:82) at sun.net.httpserver.ServerImpl$Exchange$LinkHandler.handle(ServerImpl.java:675) at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:79) at sun.net.httpserver.ServerImpl$Exchange.run(ServerImpl.java:647) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)

Any idea what im doing wrong here or what the problem is? Ive tried a few replays and its always the same.

Thank you

howardchung commented 4 years ago

Maybe you need @ in front of the path? Example https://github.com/odota/parser/blob/master/scripts/test.sh

drstevp commented 4 years ago

Yep that was it :)

Cheers

drstevp commented 4 years ago

One more thing before you close this, is there documentation on the information in the json files that get returned so that i may interpret them correctly? some are straightforward like "attackername", "targetname" etc, some arent as much.

thanks.

howardchung commented 4 years ago

Unfortunately there isn't documentation available on the fields