Difio registration agent for stand-alone Python virtualenv applications
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Difio registration agent for stand-alone Python virtualenv applications.

It compiles a list of locally installed Python packages and sends it to http://www.dif.io.

Installing inside your virtualenv

  • Create an account at http://www.dif.io

  • Activate your virtualenv

    • if you're using virtualenvwrapper then simply:

      workon myapp
    • if you're not using virtualenvwrapper then something like this will work:

      cd ~/.virtualenvs/myapp/
      source bin/activate
  • Install this package

pip install difio-virtualenv-python
  • Create a script which will contain your configuration values and register the application with Difio when executed. It should look something like this:
export DIFIO_USER_ID=YourUserID
  • Make this script executable
chmod a+x $VIRTUAL_ENV/path/to/registration_script
  • If you wish, you can configure $VIRTUAL_ENV/bin/postactivate hook to call the registration script every time when the virtualenv is activated
echo "\$VIRTUAL_ENV/path/to/registration_script" >> $VIRTUAL_ENV/bin/postactivate
chmod a+x $VIRTUAL_ENV/bin/postactivate
  • Execute the registration script to register the application.

NOTE: You will have to do this every time when you install/remove or upgrade packages in the virtualenv. Optionally you can configure a cron job to do this automatically.

  • If everything goes well you should see something like:
Difio: Success, registered/updated application with uuid 7a99f652-977a-477a-b35c-1d8e60478425

That's it, you can now check your application statistics at http://www.dif.io


  • Difio will use the basepath of your virtualenv as the application name. To override use environment variable DIFIO_APP_NAME;
  • Package virtualenv will also be added to the list of installed packages if you have created your virtualenv with --system-site-packages option. Otherwise use environment variable DIFIO_VIRTUALENV_VERSION to override;
  • Application type is "python" followed by the interpreter version;
  • Application URL is the system hostname prepended with http://. To override use environment variable DIFIO_APP_URL including the protocol string.