{ "info": { "author": "Maik Kulbe", "author_email": "info@linux-web-development.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: POSIX :: Linux", "Topic :: Software Development :: Testing", "Topic :: System :: Filesystems", "Topic :: System :: Logging", "Topic :: System :: Monitoring", "Topic :: Utilities" ], "description": "pyflogd\r\n=======\r\n\r\npyflogd is a monitoring tool to support you when tracking down potential\r\nfile system bottlenecks. It uses the inotify kernel API.\r\n\r\npyflogd uses a dev-friendly JSON output format. Every line will contain\r\none JSON object with a type and a path property. You can parse the lines\r\nand analyse which files are accessed and written the most.\r\n\r\nRequirements\r\n------------\r\n\r\n- daemon\r\n- docopt\r\n- hashlib\r\n- json\r\n- lockfile\r\n- pyinotify\r\n- schema\r\n- signal\r\n\r\nNotes on using pyflogd on Ubuntu\r\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n\r\nWhen pyinotify is installed via apt you will get an old version that has\r\na known bug regarding recursive watching. When using this version it is\r\nnot possible to track files and folders in folders that are created\r\nafter pyflogd has started. To solve this, you can run\r\n``pip install --upgrade pyinotify``.\r\n\r\nPython 3 compatibility\r\n~~~~~~~~~~~~~~~~~~~~~~\r\n\r\npyflogd depends on python-daemon which is currently not compatible with\r\nPython 3. Running pyflogd as daemon will not work without this, but the\r\n``run`` command should work just fine.\r\n\r\nInstallation\r\n------------\r\n\r\nTo install pyflog run the following commands:\r\n\r\n::\r\n\r\n git clone https://github.com/mkzero/pyflogd\r\n python2 setup.py install\r\n\r\nAfter that you should be able to use the ``pyflod`` command from you\r\ncommandline.\r\n\r\nUsage\r\n-----\r\n\r\n::\r\n\r\n Usage:\r\n pyflogd run [-f | --only-files] [-r | --recursive] [-o | --outfile=] ...\r\n pyflogd start [-f | --only-files] [-r | --recursive] [-o | --outfile=] ...\r\n pyflogd stop ...\r\n pyflogd -h | --help\r\n pyflogd -v | --version\r\n\r\n Options:\r\n -h --help Show this screen\r\n -v --version Show version\r\n -r --recursive Watch a folder recursivly\r\n -f --only-files Don't report events for folders\r\n -o FILE --outfile=FILE Write to file instead of stdout\r\n\r\nrun\r\n~~~\r\n\r\nThe ``run`` command starts pyflogd in foreground and outputs events to\r\nstdout when no ``outfile`` is supplied.\r\n\r\nExample:\r\n\r\n::\r\n\r\n pyflogd run --outfile=/tmp/pyflogd.log --recursive /path/to/folder1 \\\r\n /path/to/folder2 /path/to/folder3\r\n\r\nstart/stop\r\n~~~~~~~~~~\r\n\r\nThe ``start`` command starts a pyflogd daemon in the background and\r\noutputs events to the supplied ``outfile``. To stop the daemon use the\r\nsame folders as for the start command and omit all other options like\r\n``outfile`` or ``recursive``.\r\n\r\nExample:\r\n\r\n::\r\n\r\n pyflogd start --outfile=/tmp/pyflogd.log --recursive /path/to/folder1 \\\r\n /path/to/folder2 /path/to/folder3\r\n\r\n pyflogd stop /path/to/folder1 /path/to/folder2 /path/to/folder3", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mkzero/pyflogd", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pyflogd", "package_url": "https://pypi.org/project/pyflogd/", "platform": "Linux", "project_url": "https://pypi.org/project/pyflogd/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/mkzero/pyflogd" }, "release_url": "https://pypi.org/project/pyflogd/0.1.1/", "requires_dist": null, "requires_python": null, "summary": "File system access monitoring daemon", "version": "0.1.1" }, "last_serial": 4398235, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "990335d0da7e69c83b172b827b04c484", "sha256": "b008198a7c9bb70211101c8a674ed80d3baaa7e9b8ed484863dffaeac751555b" }, "downloads": -1, "filename": "pyflogd-0.1.1.tar.gz", "has_sig": false, "md5_digest": "990335d0da7e69c83b172b827b04c484", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3579, "upload_time": "2013-10-14T22:28:25", "url": "https://files.pythonhosted.org/packages/15/f4/cb45f90088576ccb96fc1e13c11e53cfeceee18e1bcd1bf670b12151b6f5/pyflogd-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "990335d0da7e69c83b172b827b04c484", "sha256": "b008198a7c9bb70211101c8a674ed80d3baaa7e9b8ed484863dffaeac751555b" }, "downloads": -1, "filename": "pyflogd-0.1.1.tar.gz", "has_sig": false, "md5_digest": "990335d0da7e69c83b172b827b04c484", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3579, "upload_time": "2013-10-14T22:28:25", "url": "https://files.pythonhosted.org/packages/15/f4/cb45f90088576ccb96fc1e13c11e53cfeceee18e1bcd1bf670b12151b6f5/pyflogd-0.1.1.tar.gz" } ] }