Closed ppatierno closed 10 years ago
what does "pip freeze" say? Are you using a virtual environment for this?
This is what I've got on my fedora 19 box...
$ pip freeze | grep fuse
fusepy==2.0.2 # this is in my virtual environment...
I've also got fuse-python 0.2.1 installed from the system repositories, but I don't think it's being used.
If you do "pip install -e ." it should install from the setup.py file, which lists fusepy explicitly.
I'm using a virtual machine with VMWare. pip freeze tells me following...
fuse-python==0.2.1 llfuse==0.37.1
"pip install -e ." give me following...
Obtaining file:///home/ppatierno/mqtt/mqtt-malaria Running setup.py egg_info for package from file:///home/ppatierno/mqtt/mqtt-malaria
Downloading/unpacking mosquitto>=1.0 (from mqtt-malaria==0.1-75-gb242446) Running setup.py egg_info for package mosquitto
Downloading/unpacking fusepy (from mqtt-malaria==0.1-75-gb242446) Running setup.py egg_info for package fusepy
Installing collected packages: mosquitto, fusepy, mqtt-malaria Found existing installation: mosquitto 0.15 Uninstalling mosquitto: Exception: Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 126, in main self.run(options, args) File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 228, in run requirement_set.install(install_options, global_options) File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1089, in install requirement.uninstall(auto_confirm=True) File "/usr/lib/python2.7/dist-packages/pip/req.py", line 476, in uninstall paths_to_remove.remove(auto_confirm) File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1391, in remove renames(path, new_path) File "/usr/lib/python2.7/dist-packages/pip/util.py", line 248, in renames shutil.move(old, new) File "/usr/lib/python2.7/shutil.py", line 300, in move os.unlink(src) OSError: [Errno 13] Permission denied: '/usr/share/pyshared/mosquitto-0.15.egg-info'
Storing complete log in /home/ppatierno/.pip/pip.log
What is the problem ?
You need a python virtualenv, whether you're running the machine virtually or not doesn't matter.
$ virtualenv my_env
$ . myenv/bin/activate
(my_env) $ pip install -e .
The problem you were getting was from trying to pip install -e the malaria project into your system as a whole, which is conflicted with the (very old) mosquitto that you have installed in ubuntu (at least, you would have had other problems too)
I executed virtualenv my_env all ok..
New python executable in my_env/bin/python Installing distribute..............................................................................................................................................................................................done. Installing pip...............done.
but wen I execute . myenv/bin/activate, I receive
bash: myenv/bin/activate: No such file or directory
My bad, I left out an _ character. Hopefully you can work out where.
Ok...but now I have :
(my_env)ppatierno@ppatierno-ubuntu:~/mqtt/mqtt-malaria$ ./malaria publish -h
Traceback (most recent call last):
File "./malaria", line 30, in
I have already installed mosquitto !
No, you have installed mosquitto into your system, from the ubuntu packages, which are 0.15, and totally useless :) Further, in the virtualenv, those libraries can't be seen. This is the general point of the virtualenvs, so that you can have multiple/conflicting versions of libraries for different python projects. "pip freeze" inside the virtual env will show you all the python libraries that you have access to.
You made the virtual env, and activated it, did you then do "pip install -e ." ? See also https://github.com/remakeelectric/mqtt-malaria/blob/master/README-swarm.md#get-malaria for the first three steps of installing into a virtualenv.
I'll try and update the general readme to be more clear about how this is normally done.
I fogot to execute "pip install -e ."...i never used virtualenv...excuse me and thanks for your patience.
I think that you can improve the installation guide ;-)
I see that using the publish command I can't specify the topic to publish, why ?
Paolo.
Changing the topic is a different issue, if you see it as an issue :) For all the testing I was doing, it really didn't matter what the topics were, and the topics are presetup to match on both the publisher and subscriber sides, as they include information about message counts in the topic names. I'm closing this for the install portion at least, but yes, the install docs could do with work.
Hi Karlp, I'm also running into the same issue as described by ppatierno, I did follow the steps as outlined by you. Presently I'm in my Python virtual environment and I run the "pip install -e .", the following are observed on the screen.
(virtualenvironment) developer@app-dev-dt0:~/work/mosq_benchMark/mqtt-malaria-master$ pip install -e .
Obtaining file:///home/developer/work/mosq_benchMark/mqtt-malaria-master
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /home/developer/work/mosq_benchMark/mqtt-malaria-master/
Could you throw some lights on it, I would like to use malaria to validate mosquitto.
That's not the same problem at atll. the error messages are completely different. You look like you have a tarball of the source instead of a a git clone of the code. Hence, the "get_get_version" is failing.
Thanks, Karlp. I did git clone and was able to run the tests successfully.
I did run publisher and subscriber with below options,
./malaria publish -t -n 10000 -P 200 -T 0.5
./malaria subscribe -n 10000 -N 200
and observed the response after running for a while
INFO:beem.listen:beem.listr-15784:Still waiting for 583817 messages
INFO:beem.listen:beem.listr-15784:Still waiting for 583719 messages
INFO:beem.listen:beem.listr-15784:Still waiting for 583619 messages
INFO:beem.listen:beem.listr-15784:Still waiting for 583522 messages
INFO:beem.listen:beem.listr-15784:Still waiting for 583514 messages
INFO:beem.listen:beem.listr-15784:Still waiting for 583294 messages
INFO:beem.listen:beem.listr-15784:Still waiting for 583193 messages
INFO:beem.listen:beem.listr-15784:Still waiting for 583099 messages
WARNING:beem.listen:beem.listr-15784:Drop count has increased by 666
INFO:beem.listen:beem.listr-15784:Still waiting for 582994 messages
ERROR:beem.listen:beem.listr-15784:Detected drops are occuring, aborting test!
Clientid: beem.listr-15784
Total clients tracked: 200
Total messages: 1417006
Total time: 14199.68 secs
Messages per second: 99 (10.020902 ms per message)
Test aborted, unable to gather duplicate/missing stats
Flight time mean: 503.00 ms
Flight time stddev: 298.17 ms
Flight time min: 0.32 ms
Flight time max: 8659.92 ms
what's drop here and I see the subscriber is aborted after a certain count. how this is determined, please shed some lights.
Could I change topics name with Malaria on the publisher side?
And one more observation, I did provide the following parameters as an argument to malaria,
./malaria publish -q 1 -s 1024 -n 10000 -P 100 -T 0.1
On the subscriber side I did observe below,
ValueError: invalid literal for float(): 3fa9BABDc55a4BDF8277fFbbBb80DA3ec36AE6aeDCbe44CB2BC4B8dA03D424D98BFaC7CdF2FdDBDAaBdC482eB6AA009E3dDaCb0BAeC6aA01124242802D22F16ceAe2534AF3FC744100fC2AE08ebeb4E122fb0d3f0fB76e61b83F59bBa72aa4ACc35dEbA8
ERROR:beem.listen:beem.listr-20258:Failed to parse a received message. (Is the publisher sending time-tracking information with -t?)
Traceback (most recent call last):
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/listen.py", line 90, in msg_handler
ms = MsgStatus(msg)
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/trackers.py", line 73, in __init__
self.time_created = time.mktime(time.localtime(float(payload_segs[0])))
ValueError: invalid literal for float(): 7A12EDEAeaFB4abE7EccB674AAAb50bacD5aF085bDaBDC6faA3c0c408aD2B34bEDeB711742EdfFaAfB196ADb6fDaA414984efbb305f8ded6f3BD1bfDA45f8Fa19c5728f3Cba3dDbcbd37ffbA7Ce97174b85FcEFCC50f45cc369E4ba07BF267bceC82F18d
ERROR:beem.listen:beem.listr-20258:Failed to parse a received message. (Is the publisher sending time-tracking information with -t?)
Traceback (most recent call last):
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/listen.py", line 90, in msg_handler
ms = MsgStatus(msg)
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/trackers.py", line 73, in __init__
self.time_created = time.mktime(time.localtime(float(payload_segs[0])))
ValueError: invalid literal for float(): 0939088DeB67cD928C18FfB7E3caf2161Ee0E90A5964D79E9cC8CeDaAeAb4f461ACfF9c5EFbA3aBBd53d4Cc0C3B03d5ED4DbB22ecD2B19f867FdcDAC1cDCb84a4a7bD9c2AbB0e302687fc9a7BacE1b7f8BF29f4B5853eeBFFF2eAe47AC35EB4598E57aE5
ERROR:beem.listen:beem.listr-20258:Failed to parse a received message. (Is the publisher sending time-tracking information with -t?)
Traceback (most recent call last):
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/listen.py", line 90, in msg_handler
ms = MsgStatus(msg)
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/trackers.py", line 73, in __init__
self.time_created = time.mktime(time.localtime(float(payload_segs[0])))
ValueError: invalid literal for float(): 68Fb4690AfdEC3B396b6ed30eD0Bf9C1ff7dA6B7b2FafdB85BDfbC44B0C1CA2fdbc6e4D1aCbdCfca76BDeaA5AfC31Ac8FAE05A9c056EC92D0b071dEbBeC4fD0cE7adCDeF372De98cfb8e5FE2Adc538F5bd6D27411CC13Ce1ab520bc40fBc1Bc0daFbc881
ERROR:beem.listen:beem.listr-20258:Failed to parse a received message. (Is the publisher sending time-tracking information with -t?)
Traceback (most recent call last):
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/listen.py", line 90, in msg_handler
ms = MsgStatus(msg)
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/trackers.py", line 73, in __init__
self.time_created = time.mktime(time.localtime(float(payload_segs[0])))
ValueError: could not convert string to float: CC00Ebf2b1FeFc12c6cc07F58619A1406dad133a54DF4bfDdAffE0f0E3FcfcD58382B91925DfFeE915b3f27C9bdEBC1acFEE4cB4213F4853AcCb50948016F7DC6d9F16c0aC632A0DdB9efE9dB2aef2E67fA782eBdDFfa294C9CffE4e6CADde2eaD33BCc5
ERROR:beem.listen:beem.listr-20258:Failed to parse a received message. (Is the publisher sending time-tracking information with -t?)
Traceback (most recent call last):
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/listen.py", line 90, in msg_handler
ms = MsgStatus(msg)
File "/home/developer/work/mosq_benchMark/mqtt-malaria/beem/trackers.py", line 73, in __init__
self.time_created = time.mktime(time.localtime(float(payload_segs[0])))
This is a close issue. If you're still having issues please please please make your own issue.
Hello, I have just git cloned mqtt malaria but when I lunch :
./malaria publish -h
just for help, I receive the following error :
Traceback (most recent call last): File "./malaria", line 30, in
import beem.main
File "/home/ppatierno/mqtt/mqtt-malaria/beem/main.py", line 34, in
import beem.cmds
File "/home/ppatierno/mqtt/mqtt-malaria/beem/cmds/init.py", line 2, in
import beem.cmds.subscribe
File "/home/ppatierno/mqtt/mqtt-malaria/beem/cmds/subscribe.py", line 34, in
import beem.listen
File "/home/ppatierno/mqtt/mqtt-malaria/beem/listen.py", line 166, in
class MalariaWatcherStatsFS(fuse.LoggingMixIn, fuse.Operations):
AttributeError: 'module' object has no attribute 'LoggingMixIn'
I have Ubuntu 12.04 and python-fuse seems to be updated to 0.2 version.
Paolo.