В настоящее время я пытаюсь разобраться с Caliper с помощью небольшой документации, доступной в вики проекта кода Google. Мне удалось запустить несколько тестов, и теперь я хотел бы опубликовать результаты в Интернете, чтобы я мог читать их немного более четко, чем в командной строке.
Я следовал инструкциям в вики, зашел на сайт microbenchmarks.appspot.com и скопировал ключ API в свой файл ".caliperrc". В качестве примечания, эта веб-страница сообщает мне, что файл «.caliperrc» должен быть «в Windows: C: \. Caliperrc», но на самом деле Caliper выполняет поиск в% HOME% \. Caliperrc, который находится в Windows (по крайней мере, для семь): c: \ users \% login% \. caliperrc.
При этом Caliper действительно пытается загрузить результаты ... но не получает сообщения "Публикация в http://microbenchmarks.appspot.com:80/run/ не удалось: внутренняя ошибка сервера ». Когда я изменяю код метода Runner.run так, чтобы он также печатал трассировку стека RuntimeException, он выглядит так, как показано ниже (% APIKey% в моем файле .caliperrc есть строка для 'APIKey'):
java.lang.RuntimeException: Posting to http://microbenchmarks.appspot.com:80/run/ failed.
at com.google.caliper.Runner.postResults(Runner.java:206)
at com.google.caliper.Runner.run(Runner.java:96)
at com.google.caliper.Runner.main(Runner.java:405)
at com.google.caliper.Runner.main(Runner.java:417)
at collections.ArrayListBenchmark.main(ArrayListBenchmark.java:119)
Caused by: java.io.IOException: Server returned HTTP response code: 500 for URL: http://microbenchmarks.appspot.com:80/run/%APIKey%/collections.ArrayListBenchmark
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection$6.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.net.www.protocol.http.HttpURLConnection.getChainedException(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at com.google.caliper.Runner.postResults(Runner.java:200)
... 4 more
Caused by: java.io.IOException: Server returned HTTP response code: 500 for URL: http://microbenchmarks.appspot.com:80/run/%APIKey%/collections.ArrayListBenchmark
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at java.net.HttpURLConnection.getResponseCode(Unknown Source)
at com.google.caliper.Runner.postResults(Runner.java:188)
... 4 more
Я пропустил шаг, который должен был пройти? Если это важно, я использую Windows 7 64-битный исходный код Caliper прямо из svn, используя следующую версию Java:
java version "1.6.0_17"
Java(TM) SE Runtime Environment (build 1.6.0_17-b04)
Java HotSpot(TM) 64-Bit Server VM (build 14.3-b01, mixed mode)