{"id":20528408,"url":"https://github.com/redhatinsights/insights-core","last_synced_at":"2026-04-01T18:22:08.364Z","repository":{"id":37382002,"uuid":"92518221","full_name":"RedHatInsights/insights-core","owner":"RedHatInsights","description":"Insights Core is a data collection and processing framework used by Red Hat Insights","archived":false,"fork":false,"pushed_at":"2024-05-23T06:29:08.000Z","size":17829,"stargazers_count":143,"open_issues_count":176,"forks_count":205,"subscribers_count":39,"default_branch":"master","last_synced_at":"2024-05-23T08:05:53.525Z","etag":null,"topics":["insights","redhat"],"latest_commit_sha":null,"homepage":"https://cloud.redhat.com/insights","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RedHatInsights.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","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":"2017-05-26T14:23:11.000Z","updated_at":"2024-06-03T09:53:15.554Z","dependencies_parsed_at":"2023-09-21T16:17:22.549Z","dependency_job_id":"b08405eb-f283-46ed-bc27-161c208481d2","html_url":"https://github.com/RedHatInsights/insights-core","commit_stats":{"total_commits":3923,"total_committers":153,"mean_commits":"25.640522875816995","dds":0.8888605658934489,"last_synced_commit":"ac1f5d1691d9bee7b35cff65345e5eb1dd7cbf8f"},"previous_names":[],"tags_count":427,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedHatInsights%2Finsights-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedHatInsights%2Finsights-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedHatInsights%2Finsights-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedHatInsights%2Finsights-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RedHatInsights","download_url":"https://codeload.github.com/RedHatInsights/insights-core/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247847611,"owners_count":21006100,"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":["insights","redhat"],"created_at":"2024-11-15T23:25:08.728Z","updated_at":"2026-03-10T07:17:29.172Z","avatar_url":"https://github.com/RedHatInsights.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"=============\nInsights Core\n=============\n\nInsights Core is a data collection and analysis framework that is built\nfor extensibility and rapid development.  Included are a set of reusable\ncomponents for gathering data in myriad ways and providing a reliable\nobject model for commonly useful unstructured and semi-structured data.\n\n.. code-block:: python\n\n    \u003e\u003e\u003e from insights import load_default_plugins, run\n    \u003e\u003e\u003e from insights.parsers import installed_rpms as rpm\n    \u003e\u003e\u003e lower = rpm.Rpm(\"bash-4.4.11-1.fc26\")\n    \u003e\u003e\u003e upper = rpm.Rpm(\"bash-4.4.22-1.fc26\")\n    \u003e\u003e\u003e load_default_plugins()\n    \u003e\u003e\u003e results = run(rpm.Installed)\n    \u003e\u003e\u003e rpms = results[rpm.Installed]\n    \u003e\u003e\u003e rpms.newest(\"bash\")\n    0:bash-4.4.12-7.fc26\n    \u003e\u003e\u003e lower \u003c= rpms.newest(\"bash\") \u003c upper\n    True\n\nFeatures\n--------\n\n* Over 200 Enterprise Linux data parsers\n* Support for Python 2.7+ and 3.3+\n* Built in support for local host collection\n* Data collection support for several archive formats\n\nInstallation\n------------\n\nReleases can be installed via pip\n\n.. code-block:: shell\n\n    $ pip install insights-core\n\nDocumentation\n-------------\n\nThere are several resources for digging into the details of how to use ``insights-core``:\n\n- A `detailed walk through of the constructing a rule\n  \u003chttps://github.com/RedHatInsights/insights-core/blob/master/docs/notebooks/Diagnostic%20Walkthrough.ipynb\u003e`_\n- The `insights-core-tutorials project docs \u003chttps://insights-core-tutorials.readthedocs.io/en/latest/\u003e`_\n  have three tutorials plus instructions on how to setup the tutorial environment\n\n  - `Preparing Your Development Environment\n    \u003chttps://insights-core-tutorials.readthedocs.io/en/latest/prep_tutorial_env.html\u003e`_\n  - `Custom Parser Development\n    \u003chttps://insights-core-tutorials.readthedocs.io/en/latest/customtut_parsers.html\u003e`_\n  - `Custom Combiner Development\n    \u003chttps://insights-core-tutorials.readthedocs.io/en/latest/combiner_tutorial.html\u003e`_\n  - `Rule Development\n    \u003chttps://insights-core-tutorials.readthedocs.io/en/latest/rule_tutorial_index.html\u003e`_\n\n\n- The basic architectural principles of ``insights-core`` can be found in\n  the `Insights Core\n  \u003chttps://github.com/RedHatInsights/insights-core/blob/master/docs/notebooks/Insights%20Core%20Tutorial.ipynb\u003e`_ tutorial jupyter notebook\n- A simple `stand_alone.py\n  \u003chttps://github.com/RedHatInsights/insights-core/blob/master/examples/rules/stand_alone.py\u003e`_\n  script encapsulates creating all the basic components in a single script\n  that can be easily executed locally\n- Some `quick-start examples\n  \u003chttps://github.com/RedHatInsights/insights-core/blob/master/examples\u003e`_\n  are provided in the ``examples`` directory. Each subdirectory under examples\n  includes a ``README.md`` file that provides a description of the contents\n  and usage information.\n\nTo Run the Jupyter Notebooks\n++++++++++++++++++++++++++++\n\nIf you would like to execute the jupyter notebooks locally, you can\ninstall jupyter:\n\n.. code-block:: bash\n\n    pip install jupyter\n\nTo start the notebook server:\n\n.. code-block:: bash\n\n    jupyter notebook\n\nThis should start a web-server and open a tab on your browser.  From\nthere, you can navigate to ``docs/notebooks`` and select a notebook of\ninterest.\n\nMotivation\n----------\n\nAlmost everyone who deals with diagnostic files and archives such as\nsosreports or JBoss server.log files eventually automates the process of\nrummaging around inside them. Usually, the automation is comprised of\nfairly simple scripts, but as these scripts get reused and shared, their\ncomplexity grows and a more sophisticated design becomes worthwhile.\n\nA general process one might consider is:\n\n#. Collect some unstructured data (e.g. from a command, an archive, a\n   directory, directly from a system)\n\n#. Convert the unstructured data into objects with standard APIs.\n\n#. Optionally combine some of the objects to provide a higher level\n   interface than they provide individually (maybe all the networking\n   components go together to provide a high level API, or maybe multiple\n   individual objects provide the same information. Maybe the same\n   information can be gotten from multiple sources, not all of which are\n   available at the same time from a given system or archive).\n\n#. Use the data model above at any granularity to write rules that\n   formalize support knowledge, persisters that build database tables,\n   metadata components that extract contextual info for other systems,\n   and more.\n\nInsights Core provides this functionality. It is an extensible framework\nfor collecting and analyzing data on systems, from archives,\ndirectories, etc. in a standard way.\n\nInsights Core versus Red Hat Insights\n-------------------------------------\n\nA common confusion about this project is how it relates to `Red Hat\nInsights \u003chttps://access.redhat.com/insights/\u003e`_.  Red Hat Insights is a\nproduct produced by `Red Hat \u003chttps://www.redhat.com\u003e`_ for automated\ndiscovery and remediation of issues in Red Hat products.  The\n``insights-core`` project is used by Red Hat Insights, but only represents\nthe data collection and rule analysis infrastructure.  This\ninfrastructure is meant to be reusable by other projects.\n\nSo, ``insights-core`` can be used for individuals wanting to perform\nanalysis locally, or integrated into other diagnostics systems.  Parsers\nor rules written using ``insights-core`` can be executed in Red Hat\nInsights, but, it is not a requirement.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhatinsights%2Finsights-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredhatinsights%2Finsights-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhatinsights%2Finsights-core/lists"}