Skip to main content

Insights Core is a data collection and analysis framework

Project description

Insights Core is a data collection and analysis framework that is built for extensibility and rapid development. Included are a set of reusable components for gathering data in myriad ways and providing a reliable object model for commonly useful unstructured and semi-structured data.

>>> from insights import load_default_plugins, run
>>> from insights.parsers import installed_rpms as rpm
>>> lower = rpm.Rpm("bash-4.4.11-1.fc26")
>>> upper = rpm.Rpm("bash-4.4.22-1.fc26")
>>> load_default_plugins()
>>> results = run(rpm.Installed)
>>> rpms = results[rpm.Installed]
>>> rpms.newest("bash")
0:bash-4.4.12-7.fc26
>>> lower <= rpms.newest("bash") < upper
True

Features

  • Over 200 Enterprise Linux data parsers

  • Support for Python 2.7+ and 3.3+

  • Built in support for local host collection

  • Data collection support for several archive formats

Installation

Releases can be installed via pip

$ pip install insights-core

Documentation

There are several resources for digging into the details of how to use insights-core:

To Run the Jupyter Notebooks

If you would like to execute the jupyter notebooks locally, you can install jupyter:

pip install jupyter

To start the notebook server:

jupyter notebook

This should start a web-server and open a tab on your browser. From there, you can navigate to docs/notebooks and select a notebook of interest.

Motivation

Almost everyone who deals with diagnostic files and archives such as sosreports or JBoss server.log files eventually automates the process of rummaging around inside them. Usually, the automation is comprised of fairly simple scripts, but as these scripts get reused and shared, their complexity grows and a more sophisticated design becomes worthwhile.

A general process one might consider is:

  1. Collect some unstructured data (e.g. from a command, an archive, a directory, directly from a system)

  2. Convert the unstructured data into objects with standard APIs.

  3. Optionally combine some of the objects to provide a higher level interface than they provide individually (maybe all the networking components go together to provide a high level API, or maybe multiple individual objects provide the same information. Maybe the same information can be gotten from multiple sources, not all of which are available at the same time from a given system or archive).

  4. Use the data model above at any granularity to write rules that formalize support knowledge, persisters that build database tables, metadata components that extract contextual info for other systems, and more.

Insights Core provides this functionality. It is an extensible framework for collecting and analyzing data on systems, from archives, directories, etc. in a standard way.

Insights Core versus Red Hat Insights

A common confusion about this project is how it relates to Red Hat Insights. Red Hat Insights is a product produced by Red Hat for automated discovery and remediation of issues in Red Hat products. The insights-core project is used by Red Hat Insights, but only represents the data collection and rule analysis infrastructure. This infrastructure is meant to be reusable by other projects.

So, insights-core can be used for individuals wanting to perform analysis locally, or integrated into other diagnostics systems. Parsers or rules written using insights-core can be executed in Red Hat Insights, but, it is not a requirement.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

insights_core-3.7.8.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

insights_core-3.7.8-py3-none-any.whl (2.6 MB view details)

Uploaded Python 3

File details

Details for the file insights_core-3.7.8.tar.gz.

File metadata

  • Download URL: insights_core-3.7.8.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for insights_core-3.7.8.tar.gz
Algorithm Hash digest
SHA256 9cb3857bbbd6b60f3930717520f309fd3e374ab6d1526c16006fefda9ec7b799
MD5 101a9b4b3a5c28499d565b923dec20b7
BLAKE2b-256 9eff90328f21f44d37303bfca12ee49e9a63d25cb0b7d6aa2fef7c554092536a

See more details on using hashes here.

File details

Details for the file insights_core-3.7.8-py3-none-any.whl.

File metadata

  • Download URL: insights_core-3.7.8-py3-none-any.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for insights_core-3.7.8-py3-none-any.whl
Algorithm Hash digest
SHA256 198f8803f5ad67b46e143132e4cf905cc5cf496fa7c681b1b6b893b4ce3daeba
MD5 127bb4fe1d228288236cafeb05dc0f02
BLAKE2b-256 e38d3cb11dfe59a127b93dc4abe41d0c70e1dcb44b14738deec773aa3f1fe577

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page