Использование SIGAR для получения информации о процессе оракула с сервера веб-приложений (glassfish4)

Я работал над веб-монитором, используя sigar для сбора информации о системе, но теперь мне нужно получить данные об использовании ОЗУ и ЦП Oracle. Я сделал это с помощью функции sigar.getProcCpu(pid).getTotal().

Но когда я развертываю приложение на Glassfish 4, я получаю сообщение об ошибке: org.hyperic.sigar.SigarPermissionDeniedException: Отказано в доступе.

есть ли обходной путь для этого? Могу ли я предоставить sigar доступ к информации, которую я запрашиваю?


person JoseGarcia    schedule 06.10.2013    source источник


Ответы (1)


У меня возникла точно такая же проблема, как у вас. Я нашел этот пост после того, как задал свой вопрос и найди мой ответ. И вот мой ответ на мой собственный вопрос:

ОС не позволяет вашей программе получать доступ к информации о процессе, пока вы не запустите программу с правами администратора, поэтому мне нужно предоставить права администратора.

Существует несколько способов предоставить права администратора, в том числе попросить пользователя щелкнуть правой кнопкой мыши значок и выбрать «Запуск от имени администратора».

Но лучшим способом может быть обертка вашего java-приложения в .exe, например >здесь и здесь.

Однако мне, вероятно, придется взломать ОС, как сказал эксковбой здесь, так как я хочу показать информацию на веб-странице и не могу обернуть мое приложение в файл .exe.

Я думаю, что я должен сдаться. Просто поместите эти ссылки для тех, кому это может понадобиться. :) О, общее использование ЦП доступно, если хотите, кстати.

Надеюсь, это поможет вам и извините за мой плохой английский. ;)

person nosnhoj    schedule 26.11.2013