Я пытался запустить мое приложение spark с профайлером jvm от etsy [https://github.com/etsy/statsd-jvm-profiler, чтобы профилировать мое приложение spark, однако у меня возникают проблемы с выполнением.
При запуске с использованием указанногокоманда:
spark/bin/spark-submit --conf spark.local.dir=/local/spark-scratch-space --conf spark.yarn.queue=streaming --conf 'spark.driver.extraJavaOptions=-javaagent:statsd-jvm-profiler-2.1.0-jar-with-dependencies.jar=server=x.x.x.x,port=8086,reporter=InfluxDBReporter,database=profiler,username=profiler,password=profiler,prefix=MySparkAPP,tagMapping=US_Offline' --conf 'spark.executor.extraJavaOptions=-javaagent:statsd-jvm-profiler-2.1.0-jar-with-dependencies.jar=server=x.x.x.x,port=8086,reporter=InfluxDBReporter,database=profiler,username=profiler,password=profiler,prefix=MySparkAPP,tagMapping=US_Offline' --class someClass --master yarn-client --num-executors 5 --executor-cores 3 --executor-memory 2G --jars /local/shprin/statsd-jvm-profiler-2.1.0-jar-with-dependencies.jar MyApp
не работает с ошибкой:
Error opening zip file or JAR manifest missing : statsd-jvm-profiler-2.1.0-jar-with-dependencies.jar
Error occurred during initialization of VM
agent library failed to init: instrument
Я скачал предварительно скомпилированный jar по этой ссылке:
wget -qc https://github.com/etsy/statsd-jvm-profiler/releases/download/2.1.0/statsd-jvm-profiler-2.1.0-jar-with-dependencies.jar
Я новичок в этом, и я ищу помощи в понимании того, что идет не так, поскольку приложение spark, если оно работает без профилировщика,работает просто отлично.
Мне нужны указатели, чтобы посмотреть и изучить, чтобы исправить это.Любая помощь, предложения приветствуются.
Я использую java8, а приложение spark написано на scala.И я уже проверил, что файл манифеста существует в statsd-jvm-profiler-2.1.0-jar-with-dependencies.jar
Журналы диспетчера ресурсов:
Exception from resource manager :
18/06/12 17:05:04 INFO yarn.YarnAllocator: Completed container container_e02_1525632635880_0582_01_000012 on host: cluster-nm-1a-d28x-a19182d8.us-east-1.amazon.com (state: COMPLETE, exit status: 1)
18/06/12 17:05:04 WARN yarn.YarnAllocator: Container marked as failed: container_e02_1525632635880_0582_01_000012 on host: cluster-nm-1a-d28x-a19182d8.us-east-1.amazon.com. Exit status: 1. Diagnostics: Exception from container-launch.
Container id: container_e02_1525632635880_0582_01_000012
Exit code: 1
Stack trace: ExitCodeException exitCode=1:
at org.apache.hadoop.util.Shell.runCommand(Shell.java:545)
at org.apache.hadoop.util.Shell.run(Shell.java:456)
at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:722)
at org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor.launchContainer(DefaultContainerExecutor.java:212)
at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:302)
at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:82)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Container exited with a non-zero exit code 1