{"id":20541041,"url":"https://github.com/netways/support-collector","last_synced_at":"2026-03-04T23:31:35.485Z","repository":{"id":38315491,"uuid":"366068670","full_name":"NETWAYS/support-collector","owner":"NETWAYS","description":"The support collector allows our customers to collect relevant information from their servers. A resulting ZIP file can then be provided to our support team for further inspection.","archived":false,"fork":false,"pushed_at":"2025-02-05T06:20:42.000Z","size":278,"stargazers_count":0,"open_issues_count":3,"forks_count":1,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-02-05T07:24:22.647Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://netways.de/en/support/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NETWAYS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-05-10T14:20:55.000Z","updated_at":"2025-02-05T06:20:44.000Z","dependencies_parsed_at":"2023-02-09T02:16:44.367Z","dependency_job_id":"f91c21d4-7d24-4267-8c04-412a3359de1f","html_url":"https://github.com/NETWAYS/support-collector","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NETWAYS%2Fsupport-collector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NETWAYS%2Fsupport-collector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NETWAYS%2Fsupport-collector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NETWAYS%2Fsupport-collector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NETWAYS","download_url":"https://codeload.github.com/NETWAYS/support-collector/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242144975,"owners_count":20079047,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-16T01:18:59.286Z","updated_at":"2026-03-04T23:31:35.446Z","avatar_url":"https://github.com/NETWAYS.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"![go](https://github.com/NETWAYS/support-collector/actions/workflows/go.yml/badge.svg)\n![go](https://github.com/NETWAYS/support-collector/actions/workflows/golangci-lint.yml/badge.svg)\n\n# NETWAYS support collector\n\nThe support collector allows to collect relevant information from servers. The resulting ZIP file can be given to second to get an insight into the system.\n\n\u003e **WARNING:** Do not transfer the generated file over insecure connections, it contains potential sensitive\n\u003e information!\n\nIf you are a customer, you can contact us at [support@netways.de](mailto:support@netways.de) or\n[netways.de/en/contact/](https://www.netways.de/en/contact/).\n\nThe initial idea and inspiration came from [NETWAYS/icinga2-diagnostics](https://github.com/Icinga/icinga2-diagnostics).\n\n## Available Modules\n\nA brief overview about the modules, you can check the source code under [modules](modules) for what exactly is collected.\n\nMost modules check if the component is installed before trying to collect data. If the module is not detected, it will not be collected.\n\n| Module name    | Description                                                                                                                                              |\n|----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ansible        | Configuration and packages                                                                                                                               |\n| base           | Basic information about the system (operating system, kernel, memory, cpu, processes, repositories, firewalls, etc.)                                     |\n| corosync       | Includes corosync and pacemaker. Collects configuration, logs, packages and service status                                                               |\n| elastic        | Includes elasticsearch, logstash and kibana. Collects configuration, packages and service status                                                         |\n| foreman        | Configuration, logs, packages and service status                                                                                                         |\n| grafana        | Configuration, logs, plugins, packages and service status                                                                                                |\n| graphite       | Includes graphite and carbon. Collects configuration, logs, python / pip version and list, packages and service status                                   |\n| graylog        | Configuration, packages and service status                                                                                                               |\n| icinga2        | Configuration, packages, service status, logs, Icinga 2 objects, Icinga 2 variables, plugins, icinga-installer and data from API endpoints (if provided) |\n| icingadb       | Includes IcingaDB and IcingaDB redis. Collects configuration, logs, packages and service status                                                          |\n| icingadirector | Packages or git information, logs, Director health status and service status                                                                             |\n| icingaweb2     | Configuration, logs, packages, modules, PHP, modules and service status                                                                                  |\n| influxdb       | Configuration, logs, packages and service status                                                                                                         |\n| keepalived     | Configuration, packages and service status                                                                                                               |\n| mongodb        | Configuration, logs, packages and service status                                                                                                         |\n| mysql          | Configuration, logs, packages and service status                                                                                                         |\n| postgresql     | Configuration, logs, packages and service status                                                                                                         |\n| prometheus     | Configuration, packages and service status                                                                                                               |\n| puppet         | Configuration, logs, module list, packages and service status                                                                                            |\n| redis          | Configuration, logs, packages and service status                                                                                                         |\n| webservers     | Includes apache2, httpd and nginx. Collects configuration, logs, packages and service status                                                             |\n\n\n## Usage\n\n`$ support-collector`\n\nThe CLI wizard will guide you through the possible arguments after calling the command. If you prefer to skip the wizard, you can use `--disable-wizard` and use the default control values.  \nA more detailed control is possible through the use of an answer-file.\n\n**Available arguments:**\n\n| Short | Long                   | Description                                               |\n|-------|------------------------|-----------------------------------------------------------|\n| -f    | --answer-file          | Provide an answer-file to control the collection          |\n|       | --disable-wizard       | Disable interactive wizard and use default control values |\n|       | --generate-answer-file | Generate an example answer-file with default values       |\n| -V    | --verbose              | Enable verbose logging                                    |\n| -v    | --version              | Print version and exit                                    |\n| -v    | --version              | Print version and exit                                    |\n\n## Obfuscation\n\n\u003e **WARNING:** Some passwords or secrets are automatically removed, but this no guarantee, so be careful what you share!\n\nWith using an answer-file, you are able to add multiple custom obfuscators.  \nAs these obfuscators are based on regex, you must add a valid regex pattern that meets your requirements.\n\nFor example, `Secret:\\s*(.*)` will find `Secret: DummyValue` and set it to `Secret: \u003chidden\u003e`.\n\nIn addition, files and folders that follow a specific pattern are not collected. This affects all files that correspond to the following filters:  \n`.*`, `*~`, `*.key`, `*.csr`, `*.crt`, and `*.pem`\n\n## Answer File\n\nBy providing an answer-file you can customize the data collection.  \nIn addition to some general control values that customize the collection, further details for modules - that are not included by default - can be collected and configured.\n\nThe answer-file has to be in YAML format.  \nTo generate a default answer-file, you can use `--generate-answer-file`.    \n\nTo provide an answer-file, just use `--answer-file \u003cfile\u003e.yml` or `-f \u003cpath\u003e.yml`. With using this, the wizard will be skipped.\n\nYou can find an example answer-file [here](doc/answer-file.yml.example).\n\n### General\n\nInside the general section we can configure some general behavior for the support-collector.\n````yaml\ngeneral:\n    outputFile: data.zip      # Name of the resulting zip file\n    enabledModules: []        # List of enabled modules (Can also be 'all')\n    disabledModules: []       # List of disabled modules\n    extraObfuscators: []      # Custom obfuscators that should be applied\n    detailedCollection: true  # Enable detailed collection\n    commandTimeout: []        # Command timeout for exec commands (Default 1m0s)\n````\n\n### Icinga 2\n\nFor the module `icinga2` it is possible do define some API endpoints to collect data from.  \nThere is no limit of endpoints that can be defined.\n\n````yaml\nicinga2:\n    endpoints:                # List of Icinga 2 API endpoint to collect data from\n        - address: 127.0.0.1  # Address of endpoint\n          port: 5665          # Icinga 2 port\n          username: icinga    # Icinga 2 API user\n          password: icinga    # Icinga 2 API password\n````\n\n## Supported systems\n\n| Distribution    | Tested on                | Supported |\n|-----------------|--------------------------|:---------:|\n| CentOS / EL     | CentOS 7/8, RHEL 7/8     |     ✅     |\n| Debian          | Debian 10/11             |     ✅     |\n| Ubuntu          | Ubuntu 18.04/20.04/22.04 |     ✅     |\n| SLES / OpenSUSE | openSUSE Leap 15.4       |     ✅     |\n\n## License\n\nCopyright (C) 2021 [NETWAYS GmbH](mailto:info@netways.de)\n\nThis program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public\nLicense as published by the Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied\nwarranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License along with this program. If not,\nsee \u003chttps://www.gnu.org/licenses/\u003e.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetways%2Fsupport-collector","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnetways%2Fsupport-collector","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetways%2Fsupport-collector/lists"}