starting ngxtop: Traceback (most recent call last): File "/usr/lib/python-exec/python3.3/ngxtop", line 9, in <module> load_entry_point('ngxtop==0.0.2', 'console_scripts', 'ngxtop')() File "/usr/lib64/python3.3/site-packages/pkg_resources.py", line 353, in load_entry_point return get_distribution(dist).load_entry_point(group, name) File "/usr/lib64/python3.3/site-packages/pkg_resources.py", line 2321, in load_entry_point return ep.load() File "/usr/lib64/python3.3/site-packages/pkg_resources.py", line 2048, in load entry = __import__(self.module_name, globals(),globals(), ['__name__']) File "/usr/lib64/python3.3/site-packages/ngxtop/ngxtop.py", line 77, in <module> from config_parser import detect_log_config, detect_config_path, extract_variables, build_pattern ImportError: No module named 'config_parser' Looks like a dependency is missing?
Looks like this is a python 3.3 issue, it works with python 2.7
It seems there are problem with py3
+*ngxtop-0.0.2-r1 (04 Jun 2014) + + 04 Jun 2014; Justin Lecher <jlec@gentoo.org> -ngxtop-0.0.2.ebuild, + +ngxtop-0.0.2-r1.ebuild, +files/ngxtop-0.0.2-py3.patch: + Fix compatibility with >= py3.3, #512380 +
Looks like the fix was not complete: Traceback (most recent call last): File "/usr/lib/python-exec/python3.3/ngxtop", line 9, in <module> load_entry_point('ngxtop==0.0.2', 'console_scripts', 'ngxtop')() File "/usr/lib64/python3.3/site-packages/ngxtop/ngxtop.py", line 385, in main process(args) File "/usr/lib64/python3.3/site-packages/ngxtop/ngxtop.py", line 352, in process access_log, log_format = detect_log_config(arguments) File "/usr/lib64/python3.3/site-packages/ngxtop/config_parser.py", line 118, in detect_log_config log_path = choose_one(access_logs.keys(), 'Select access log file to process: ') File "/usr/lib64/python3.3/site-packages/ngxtop/utils.py", line 9, in choose_one selected = raw_input(prompt) NameError: global name 'raw_input' is not defined
Alright, I will drop py3 support for now and look into fixes.
+ 07 Jun 2014; Justin Lecher <jlec@gentoo.org> ngxtop-0.0.2-r1.ebuild, + files/ngxtop-0.0.2-py3.patch: + Add py3 compatibility, #512380 +
It looks it doesn't work: # python -V Python 3.3.5 # ngxtop info Traceback (most recent call last): File "/usr/lib/python-exec/python3.3/ngxtop", line 9, in <module> load_entry_point('ngxtop==0.0.2', 'console_scripts', 'ngxtop')() File "/usr/lib64/python3.3/site-packages/pkg_resources.py", line 353, in load_entry_point return get_distribution(dist).load_entry_point(group, name) File "/usr/lib64/python3.3/site-packages/pkg_resources.py", line 2321, in load_entry_point return ep.load() File "/usr/lib64/python3.3/site-packages/pkg_resources.py", line 2048, in load entry = __import__(self.module_name, globals(),globals(), ['__name__']) File "/usr/lib64/python3.3/site-packages/ngxtop/ngxtop.py", line 77, in <module> from config_parser import detect_log_config, detect_config_path, extract_variables, build_pattern ImportError: No module named 'config_parser' # eselect python set python2.7 # ngxtop info nginx configuration file: /etc/nginx/nginx.conf access log file: /data/log/http/nginx-access.log access log format: $server_name $host $hostname $remote_addr - $remote_user [$time_local] "$request" $status $bytes_sent "$http_referer" "$http_user_agent" ($gzip_ratio) - - available variables: bytes_sent, gzip_ratio, host, hostname, http_referer, http_user_agent, remote_addr, remote_user, request, server_name, status, time_local