symphonyoss / metronome

A python based diagnostics bot for symphony users to use to tie into symphony engineering services monitoring, or for their own use
Apache License 2.0
4 stars 3 forks source link

Can't run metronome.py (anaconda3, python 3.6.1) #13

Open LRParser opened 7 years ago

LRParser commented 7 years ago

After following workaround for previous issue, still can't get metronome example to run. python setup.py completes successfully, build and dist directories are there, but I get the error:


Traceback (most recent call last):
  File "./bin/metronome.py", line 15, in <module>
    import symphony
  File "/Users/josephheenan/symphony/lib/python3.6/site-packages/python_symphony-0.1.5-py3.6.egg/symphony/__init__.py", line 11, in <module>
    from .Agent import Agent
  File "/Users/josephheenan/symphony/lib/python3.6/site-packages/python_symphony-0.1.5-py3.6.egg/symphony/Agent/__init__.py", line 16, in <module>
    from base import Base
ModuleNotFoundError: No module named 'base' ```

It's the `import symphony` line that fails
LRParser commented 7 years ago

Command used was: (symphony) localhost:metronome josephheenan$ python ./bin/metronome.py -h

maoo commented 7 years ago

I tried to reproduce the issue locally, using python 3.6.1.

First, I run the install command using python3 setup.py install; a /usr/local/bin/metronome.py is created; if I try to run this, it fails:

$ /usr/local/bin/metronome.py -c bot.cfg

Traceback (most recent call last):
  File "/usr/local/bin/metronome.py", line 4, in <module>
    __import__('pkg_resources').run_script('metronome==0.0.17', 'metronome.py')
  File "/usr/local/lib/python3.6/site-packages/pkg_resources/__init__.py", line 739, in run_script
    self.require(requires)[0].run_script(script_name, ns)
  File "/usr/local/lib/python3.6/site-packages/pkg_resources/__init__.py", line 1494, in run_script
    exec(code, namespace, namespace)
  File "/usr/local/lib/python3.6/site-packages/metronome-0.0.17-py3.6.egg/EGG-INFO/scripts/metronome.py", line 15, in <module>
    import symphony
  File "/usr/local/lib/python3.6/site-packages/python_symphony-0.1.5-py3.6.egg/symphony/__init__.py", line 11, in <module>
    from .Agent import Agent
  File "/usr/local/lib/python3.6/site-packages/python_symphony-0.1.5-py3.6.egg/symphony/Agent/__init__.py", line 16, in <module>
    from base import Base
ModuleNotFoundError: No module named 'base'

However, if I run the ./bin/metronome.py -c bot.cfg from the root folder of the checked out project, I go further:

$ ./bin/metronome.py -c bot.cfg                                                                                                                                     

failed to allocate datafeed id: 'str' object has no attribute 'create_datafeed'

where bot.cfg is:

[symphony]
symphony_uri: https://foundation-dev.symphony.com/
symphony_keymanager_uri: https://foundation-dev-api.symphony.com/keyauth
symphony_agent_uri: https://foundation-dev-api.symphony.com/agent
symphony_sessionauth_uri: https://foundation-dev-api.symphony.com/sessionauth
symphony_p12: <p12 absolute path>
symphony_pwd: <p12 pwd>
symphony_sid: example_gLc8hdZBHut6CUJnwMmzH3___qcqBgDKdA
maoo commented 7 years ago

Just tried using python3 command:

$ python3 ./bin/metronome.py -c bot.cfg

Traceback (most recent call last):
  File "./bin/metronome.py", line 15, in <module>
    import symphony
  File "/usr/local/lib/python3.6/site-packages/python_symphony-0.1.5-py3.6.egg/symphony/__init__.py", line 11, in <module>
    from .Agent import Agent
  File "/usr/local/lib/python3.6/site-packages/python_symphony-0.1.5-py3.6.egg/symphony/Agent/__init__.py", line 16, in <module>
    from base import Base
ModuleNotFoundError: No module named 'base'
openfly commented 7 years ago

I'll take a look this hasn't seen an update in a bit could be an issue with symphony module interaction.

On Jun 7, 2017 1:35 PM, "Maurizio Pillitu" notifications@github.com wrote:

Just tried using python3 command:

$ python3 ./bin/metronome.py -c bot.cfg

Traceback (most recent call last): File "./bin/metronome.py", line 15, in import symphony File "/usr/local/lib/python3.6/site-packages/python_symphony-0.1.5-py3.6.egg/symphony/init.py", line 11, in from .Agent import Agent File "/usr/local/lib/python3.6/site-packages/python_symphony-0.1.5-py3.6.egg/symphony/Agent/init.py", line 16, in from base import Base ModuleNotFoundError: No module named 'base'

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/symphonyoss/metronome/issues/13#issuecomment-306868896, or mute the thread https://github.com/notifications/unsubscribe-auth/AAnazaQNxYbhv3gjROffXvYk0LqBdHOsks5sBt9UgaJpZM4NzCCZ .

maoo commented 7 years ago

Bottom line, I can get it work with Python 2.7, but fails with Python 3.6

LRParser commented 7 years ago

Works now in 2.7:

(metronomeenv) localhost:metronome27 josephheenan$ python ./bin/metronome.py -h usage: metronome.py [-h] [-c [CONFIG]] [-l [LOG]] [-d] [--counter [COUNTER]]

metronome bot

optional arguments: -h, --help show this help message and exit -c [CONFIG], --config [CONFIG] specify path to config file -l [LOG], --log [LOG] specify path to log file -d, --debug debug logging --counter [COUNTER] specify path to cache counter