# ESP-IDF Diag Tool (**esp-idf-diag**)
The esp-idf-diag tool gathers information about the ESP-IDF environment, the
system information, and the ESP-IDF project into a report directory to help
with troubleshooting problems.
## Installation
You can install the esp-idf-diag tool from the Python Package Index (PyPI) using:
$ pip install esp-idf-diag
## Creating report directory
In an activated ESP-IDF environment, execute the following in your ESP-IDF project:
$ esp-idf-diag create
By default, this will create a report directory named `diag-UUID`, where `UUID`
is a randomly generated Universally Unique Identifier. For example
`diag-5aaa949b-40dc-4d53-96f1-1280c801585a`. You can change the output
directory using the `--output` option. This directory will contain files that
were collected and generated by esp-idf-diag. You can review the contents and
add or remove files as necessary.
## Creating a zipped archive of the report directory
Once the report directory is prepared, it can be compressed into a zip archive with:
$ esp-idf-diag zip diag-5aaa949b-40dc-4d53-96f1-1280c801585a
Please be aware that the report directory name is taken from the create example
mentioned earlier. This name will vary with each create run unless the
`--output` option is specified.
The zip archive can be attached to a GitHub issue to provide more context for a
problem you are experiencing.
## Recipes
The data collected by esp-idf-diag is managed through recipes, which are
straightforward YAML files containing commands whose outputs are saved in the
report directory. For further details, please refer to the [Recipe format
description](esp_idf_diag/data/recipes/README.md).
## Redacting sensitive data
When a report directory is created, its contents are scanned for sensitive
information, such as passwords or tokens in URLs. This process is guided by a
purge file, in YAML format, that specifies which matching regular expressions
should be replaced. For further details, refer to the [Purge format
description](esp_idf_diag/data/purge/README.md). A default purge file is
available, but you can provide a custom one using the `--purge` option. It is
recommended to review the generated report directory for sensitive data before
sharing it.
Raw data
{
"_id": null,
"home_page": null,
"name": "esp-idf-diag",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "espressif, embedded, diagnostic, bug, report",
"author": "Espressif Systems",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/5f/d9/b9817b5c3859a5434a1d4d734c39fc6556913e7e771f65971df9a7d092b6/esp_idf_diag-0.1.1.tar.gz",
"platform": null,
"description": "# ESP-IDF Diag Tool (**esp-idf-diag**)\n\nThe esp-idf-diag tool gathers information about the ESP-IDF environment, the\nsystem information, and the ESP-IDF project into a report directory to help\nwith troubleshooting problems.\n\n## Installation\n\nYou can install the esp-idf-diag tool from the Python Package Index (PyPI) using:\n\n $ pip install esp-idf-diag\n\n## Creating report directory\n\nIn an activated ESP-IDF environment, execute the following in your ESP-IDF project:\n\n $ esp-idf-diag create\n\nBy default, this will create a report directory named `diag-UUID`, where `UUID`\nis a randomly generated Universally Unique Identifier. For example\n`diag-5aaa949b-40dc-4d53-96f1-1280c801585a`. You can change the output\ndirectory using the `--output` option. This directory will contain files that\nwere collected and generated by esp-idf-diag. You can review the contents and\nadd or remove files as necessary.\n\n## Creating a zipped archive of the report directory\n\nOnce the report directory is prepared, it can be compressed into a zip archive with:\n\n $ esp-idf-diag zip diag-5aaa949b-40dc-4d53-96f1-1280c801585a\n\nPlease be aware that the report directory name is taken from the create example\nmentioned earlier. This name will vary with each create run unless the\n`--output` option is specified.\n\nThe zip archive can be attached to a GitHub issue to provide more context for a\nproblem you are experiencing.\n\n## Recipes\n\nThe data collected by esp-idf-diag is managed through recipes, which are\nstraightforward YAML files containing commands whose outputs are saved in the\nreport directory. For further details, please refer to the [Recipe format\ndescription](esp_idf_diag/data/recipes/README.md).\n\n\n## Redacting sensitive data\n\nWhen a report directory is created, its contents are scanned for sensitive\ninformation, such as passwords or tokens in URLs. This process is guided by a\npurge file, in YAML format, that specifies which matching regular expressions\nshould be replaced. For further details, refer to the [Purge format\ndescription](esp_idf_diag/data/purge/README.md). A default purge file is\navailable, but you can provide a custom one using the `--purge` option. It is\nrecommended to review the generated report directory for sensitive data before\nsharing it.\n",
"bugtrack_url": null,
"license": null,
"summary": "Diagnostic tool for ESP-IDF",
"version": "0.1.1",
"project_urls": {
"Homepage": "https://github.com/espressif/esp-idf-diag"
},
"split_keywords": [
"espressif",
" embedded",
" diagnostic",
" bug",
" report"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "c87e3c30a941f314fae42411e88d393b7d0ec729de5723b8bfcaf348c9a1a5f4",
"md5": "45a3bd5419563244e750e46881b09824",
"sha256": "36d05f031e5d54baf352a821832315c4ee0cf529a43c7e46b25967678013b914"
},
"downloads": -1,
"filename": "esp_idf_diag-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "45a3bd5419563244e750e46881b09824",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 22270,
"upload_time": "2025-02-09T08:43:53",
"upload_time_iso_8601": "2025-02-09T08:43:53.831667Z",
"url": "https://files.pythonhosted.org/packages/c8/7e/3c30a941f314fae42411e88d393b7d0ec729de5723b8bfcaf348c9a1a5f4/esp_idf_diag-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "5fd9b9817b5c3859a5434a1d4d734c39fc6556913e7e771f65971df9a7d092b6",
"md5": "3c4b812ef3076fdc7083124c89e1225e",
"sha256": "4ba922921e957ac6286fc0c0070909eba56584ef0abed2f4fde0fb08c63ff227"
},
"downloads": -1,
"filename": "esp_idf_diag-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "3c4b812ef3076fdc7083124c89e1225e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 22429,
"upload_time": "2025-02-09T08:43:56",
"upload_time_iso_8601": "2025-02-09T08:43:56.127613Z",
"url": "https://files.pythonhosted.org/packages/5f/d9/b9817b5c3859a5434a1d4d734c39fc6556913e7e771f65971df9a7d092b6/esp_idf_diag-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-09 08:43:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "espressif",
"github_project": "esp-idf-diag",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "esp-idf-diag"
}