{ "info": { "author": "Kentaro Wada", "author_email": "www.kentaro.wada@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython" ], "description": "

\n logboard\n

\n\n

\n Monitor and Compare Logs on Browser/Terminal.\n

\n\n
\n \n \n \n\n
\n\n \n \n
\n\n\n## Description\n\nInspired by [tensorboard](https://github.com/tensorflow/tensorboard),\n[grip](https://github.com/joeyespo/grip) and [notable](https://github.com/notable/notable),\nall of which serve light-weight GUI by\n\n- only using static files (e.g., markdown files without DB);\n- single command (e.g., `tensorboard --logdir logs/` and `grip README.md`).\n\n\n## Why not `tensorboard`?\n\nI also use `tensorboard` in addition to this tool.\nBut currently `tensorboard` doesn't support comparing different configurations\nfor each log (e.g., git-hash of the code, learning rate, training strategy).\n`logboard` is a kind of extra plugin to `tensorboard`\n(but you need to run in different terminal, unfortunately).\nI expect this kind of feature will be included in `tensorboard` in the future.\n\n\n## Installation\n\n```bash\npip install logboard\n```\n\n\n## Usage\n\n### Browser (`logboard --logdir logs/`)\n\n```bash\n$ cd examples\n\n$ cat logs/20190310_093252.724597/args\n{\n \"loglevel\": \"info\",\n \"gpu\": 0,\n \"seed\": 0,\n \"class_ids\": [\n 1\n ],\n \"lr\": 0.001,\n \"timestamp\": \"2019-03-10T09:32:52.724597\",\n \"out\": \"/home/wkentaro/logboard/examples/logs/20190310_093252.724597\",\n \"hostname\": \"computer1\",\n \"githash\": \"b48ce48\"\n}\n\n# similar to tensorboard --logdir logs/\n$ logboard --logdir logs/ --filter out timestamp loglevel gpu seed 'lr .*' '.*main/loss.*(max)' '.*loss_.*'\n```\n\n\n### Terminal (`logtable --logdir logs/`)\n\n```bash\n$ cd examples\n\n$ logtable --logdir logs --filter out timestamp loglevel gpu seed 'lr .*' '.*main/loss.*(max)' '.*loss_.*'\n * Log directory: logs\n\u2552\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2564\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2555\n\u2502 \u2502 log_dir \u2502 epoch \u2502 iteration \u2502 elapsed_time \u2502 updated_at \u2502 class_ids \u2502 githash \u2502 hostname \u2502 lr \u2502 main/ \u2502 validation/ \u2502\n\u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 loss (min) \u2502 main/ \u2502\n\u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 loss (min) \u2502\n\u255e\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u256a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2561\n\u2502 0 \u2502 20190310_093252.724597 \u2502 1 \u2502 1740 \u2502 1:47:02 \u2502 88 days, 14:24:22 \u2502 [1] \u2502 b48ce48 \u2502 computer1 \u2502 0.001 \u2502 0.0088 \u2502 0.18 \u2502\n\u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 (1, 1580) \u2502 (0, 880) \u2502\n\u251c\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502 1 \u2502 20190310_093829.691289 \u2502 1 \u2502 1720 \u2502 1:45:37 \u2502 88 days, 14:24:22 \u2502 [1] \u2502 f766b97 \u2502 computer2 \u2502 0.001 \u2502 0.012 \u2502 0.19 \u2502\n\u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 \u2502 (1, 1620) \u2502 (0, 440) \u2502\n\u2558\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2567\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255b\n```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/wkentaro/logboard", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "logboard", "package_url": "https://pypi.org/project/logboard/", "platform": "", "project_url": "https://pypi.org/project/logboard/", "project_urls": { "Homepage": "http://github.com/wkentaro/logboard" }, "release_url": "https://pypi.org/project/logboard/0.5.11/", "requires_dist": null, "requires_python": "", "summary": "Monitor and Compare Logs on Browser.", "version": "0.5.11" }, "last_serial": 5855043, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "1e8c62020f252151f8ad66ee0b42e6c7", "sha256": "f24ab10d711d2a27600c0a9a3027df061956556a8fa4dd74a8fecf298637ab76" }, "downloads": -1, "filename": "logboard-0.2.0.tar.gz", "has_sig": false, "md5_digest": "1e8c62020f252151f8ad66ee0b42e6c7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6569, "upload_time": "2019-04-08T02:10:55", "url": "https://files.pythonhosted.org/packages/f8/07/77c1543d8af3b18b51cd1f857c6061f1f86adb3e7dd0edf3c50e48dfe1bb/logboard-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "95698155d06c46f255771106b253d52b", "sha256": "1d842613f47d5650079659d355d0bdc7d6a754145764a88868fd9cbb9fc80a30" }, "downloads": -1, "filename": "logboard-0.3.0.tar.gz", "has_sig": false, "md5_digest": "95698155d06c46f255771106b253d52b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5990, "upload_time": "2019-07-03T08:52:19", "url": "https://files.pythonhosted.org/packages/3f/41/e0f892e2ddd3ae9d6a5517cc01c9bff1ced2c9a63124162e78b5d4d60b65/logboard-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "9fc1e34576e6009aa0030773208fda8c", "sha256": "095dd3bafcd5fa5b0c24c75dda3036c2ca6b2aea17afb5a086268e0a814bfcfd" }, "downloads": -1, "filename": "logboard-0.4.0.tar.gz", "has_sig": false, "md5_digest": "9fc1e34576e6009aa0030773208fda8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5712, "upload_time": "2019-07-06T15:20:50", "url": "https://files.pythonhosted.org/packages/b1/75/adf8549152665df398b6dd130db2c7626b86495e6e527fb583c1781e53c8/logboard-0.4.0.tar.gz" } ], "0.4.0.post1": [ { "comment_text": "", "digests": { "md5": "d3ca9f9027103db94b400f8b2ed0ff28", "sha256": "887cbc02ecfb26d4300e7e4bed55055388a3c6eb7566eb82e92e6085264d0fd6" }, "downloads": -1, "filename": "logboard-0.4.0.post1.tar.gz", "has_sig": false, "md5_digest": "d3ca9f9027103db94b400f8b2ed0ff28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6220, "upload_time": "2019-07-06T15:21:37", "url": "https://files.pythonhosted.org/packages/a3/cb/6ecbe7abe2ae4c402b985fcbe41f88964da20ba4f3daad1b5341d30f92f1/logboard-0.4.0.post1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "39a60326768c1a04cdb3b43144d72765", "sha256": "949d24688c095f0d2a77a63c9462001f680ba46621d88f714c1577a3737ff823" }, "downloads": -1, "filename": "logboard-0.5.0.tar.gz", "has_sig": false, "md5_digest": "39a60326768c1a04cdb3b43144d72765", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7035, "upload_time": "2019-07-15T12:29:19", "url": "https://files.pythonhosted.org/packages/ef/15/5c27c482960b4ce2200c586e98625f1be81cfa1c89e1f861bbcd13153cc5/logboard-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "e6633e21469435ade1784a2fdeea7a5e", "sha256": "ece4974d014769884fa9ddacaa99de3aa7cf59fe181175c8e04ec3fc85305681" }, "downloads": -1, "filename": "logboard-0.5.1.tar.gz", "has_sig": false, "md5_digest": "e6633e21469435ade1784a2fdeea7a5e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7038, "upload_time": "2019-07-15T12:31:09", "url": "https://files.pythonhosted.org/packages/8b/4b/f55e89af17a98fd037ef4a61875653c91aa9252ca92bfacb0dc973af201e/logboard-0.5.1.tar.gz" } ], "0.5.10": [ { "comment_text": "", "digests": { "md5": "50b37548ea8e5ac6055f30483a2d2881", "sha256": "36d68b53d04dac7f5fdecfdd6b13a6d158a715b0f049cdce7ec9f0cdfadd9814" }, "downloads": -1, "filename": "logboard-0.5.10.tar.gz", "has_sig": false, "md5_digest": "50b37548ea8e5ac6055f30483a2d2881", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10593, "upload_time": "2019-09-19T08:47:50", "url": "https://files.pythonhosted.org/packages/73/dd/8dde9eca626cb62574a6d09c8f2f9a5f0ca5d7fb7193860523bd7a8fc2b5/logboard-0.5.10.tar.gz" } ], "0.5.11": [ { "comment_text": "", "digests": { "md5": "dc0e26231d278db642283bf585cb4ef2", "sha256": "c5e17a62fa7459626b4bdf69913a63264d9972603abc99b80b1a5d882e751f42" }, "downloads": -1, "filename": "logboard-0.5.11.tar.gz", "has_sig": false, "md5_digest": "dc0e26231d278db642283bf585cb4ef2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10613, "upload_time": "2019-09-19T09:11:45", "url": "https://files.pythonhosted.org/packages/00/69/f8598920b304a3bbbfb5ca4d70640109e69b14f414fa8e437d13bf21b959/logboard-0.5.11.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "7247ae18e89ff76db7d8aa719ca01019", "sha256": "f282a88e350e52aaf6cc2ad95c12bf68fa5e16b1908cf3b3bff4942c83937ac0" }, "downloads": -1, "filename": "logboard-0.5.2.tar.gz", "has_sig": false, "md5_digest": "7247ae18e89ff76db7d8aa719ca01019", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7075, "upload_time": "2019-07-15T12:39:31", "url": "https://files.pythonhosted.org/packages/43/30/f259c65b3e3eae340a9de07d9c9262616ef21c9abc5a6e33500f9db7851c/logboard-0.5.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "f1ea494d1c6277f732828ea2d9cd3e85", "sha256": "da638bcc8b55a0e9ae1a21eb95a0946352130aeaaeb154a4a5939bc137dad285" }, "downloads": -1, "filename": "logboard-0.5.3.tar.gz", "has_sig": false, "md5_digest": "f1ea494d1c6277f732828ea2d9cd3e85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7076, "upload_time": "2019-07-15T12:44:25", "url": "https://files.pythonhosted.org/packages/00/5d/c28452854378c62d463f045d8efe961c0fce57e2e46e4c35a5d5897ceea1/logboard-0.5.3.tar.gz" } ], "0.5.4": [ { "comment_text": "", "digests": { "md5": "88f4143b62fdb33de4505bc5994b8d1b", "sha256": "a218c0d34a20cde04915549184476432f946de3c61477a481864abf91f8d88e8" }, "downloads": -1, "filename": "logboard-0.5.4.tar.gz", "has_sig": false, "md5_digest": "88f4143b62fdb33de4505bc5994b8d1b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7126, "upload_time": "2019-07-19T01:21:08", "url": "https://files.pythonhosted.org/packages/38/71/28b893be00d930b1dc537936e836ccb40ab97463b31a129f2e5687a24d7f/logboard-0.5.4.tar.gz" } ], "0.5.5": [ { "comment_text": "", "digests": { "md5": "7b6aeb4f0e3b53a7cde3fb0a578afb6d", "sha256": "ba6cd306d255f60092c88521b95a09cc71875fa0776a70cacb60ec67f0d2b794" }, "downloads": -1, "filename": "logboard-0.5.5.tar.gz", "has_sig": false, "md5_digest": "7b6aeb4f0e3b53a7cde3fb0a578afb6d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7169, "upload_time": "2019-07-23T15:52:57", "url": "https://files.pythonhosted.org/packages/b3/7b/64a2eeaced552fafd968bbf611c0691a0da374068d87b012e075e1c1ae93/logboard-0.5.5.tar.gz" } ], "0.5.6": [ { "comment_text": "", "digests": { "md5": "7ed70cf63b6adf1a7258cac2b7f1a4f7", "sha256": "67b562a9c1378d4f3821634baf550d7b2e80f46f76faa409de1b3f3bac3c36c7" }, "downloads": -1, "filename": "logboard-0.5.6.tar.gz", "has_sig": false, "md5_digest": "7ed70cf63b6adf1a7258cac2b7f1a4f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7316, "upload_time": "2019-07-28T20:24:36", "url": "https://files.pythonhosted.org/packages/46/d3/4174533c78b6a10bd4c76e775081af24db258a028f559b130a657e98a132/logboard-0.5.6.tar.gz" } ], "0.5.7": [ { "comment_text": "", "digests": { "md5": "0dc634a376735cd9d5a833adb78d0b12", "sha256": "90cd01451a8200498396bfe5637d56b14b606286def4b4e7f91fe8e30cbc0b45" }, "downloads": -1, "filename": "logboard-0.5.7.tar.gz", "has_sig": false, "md5_digest": "0dc634a376735cd9d5a833adb78d0b12", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7320, "upload_time": "2019-07-28T20:32:10", "url": "https://files.pythonhosted.org/packages/6a/ed/dc16b261adfb99962f244a5bde1aef57c98844c92fdf2e151b817d61f7ba/logboard-0.5.7.tar.gz" } ], "0.5.8": [ { "comment_text": "", "digests": { "md5": "e6759d4fdcc14d9a0f01603ac8d5777f", "sha256": "908e3aa7925ab5cf7e5175fbbea402f8da77c503119aede65528d1764c35bb01" }, "downloads": -1, "filename": "logboard-0.5.8.tar.gz", "has_sig": false, "md5_digest": "e6759d4fdcc14d9a0f01603ac8d5777f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10534, "upload_time": "2019-08-29T17:01:41", "url": "https://files.pythonhosted.org/packages/c4/6b/cf2e4332fcf0302485df8c0bbac1e37735819e551a35dd2a3384e0272e6d/logboard-0.5.8.tar.gz" } ], "0.5.9": [ { "comment_text": "", "digests": { "md5": "d0bb1b33a20d0efd2134cd1d7a5d7732", "sha256": "fe92b86da2474a266bf845ebe35e841039e71583ea659730863ee5c5d64d96d8" }, "downloads": -1, "filename": "logboard-0.5.9.tar.gz", "has_sig": false, "md5_digest": "d0bb1b33a20d0efd2134cd1d7a5d7732", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10583, "upload_time": "2019-09-13T15:52:24", "url": "https://files.pythonhosted.org/packages/42/95/3bf01355c33080397f59930956422195ed7831bda355304983b0c91ccb6e/logboard-0.5.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "dc0e26231d278db642283bf585cb4ef2", "sha256": "c5e17a62fa7459626b4bdf69913a63264d9972603abc99b80b1a5d882e751f42" }, "downloads": -1, "filename": "logboard-0.5.11.tar.gz", "has_sig": false, "md5_digest": "dc0e26231d278db642283bf585cb4ef2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10613, "upload_time": "2019-09-19T09:11:45", "url": "https://files.pythonhosted.org/packages/00/69/f8598920b304a3bbbfb5ca4d70640109e69b14f414fa8e437d13bf21b959/logboard-0.5.11.tar.gz" } ] }