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 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")
>>> 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.6+ 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 verses 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.0.57.tar.gz (1.2 MB view details)

Uploaded Source

Built Distributions

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

insights_core-3.0.57-py3.6.egg (3.2 MB view details)

Uploaded Egg

insights_core-3.0.57-py2.7.egg (3.2 MB view details)

Uploaded Egg

File details

Details for the file insights-core-3.0.57.tar.gz.

File metadata

  • Download URL: insights-core-3.0.57.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.13.0 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/2.7.15

File hashes

Hashes for insights-core-3.0.57.tar.gz
Algorithm Hash digest
SHA256 e2b6bdb6b9cfad27fe1a88430231316bd7bd22ba25ea45d6095ce390929ec54d
MD5 1656bdc09e17c44e7e00aad75c554a6e
BLAKE2b-256 ec40e183b609bb0185db197b7cef0d8f265a2f0ca9e7b62155ecf6730874628b

See more details on using hashes here.

File details

Details for the file insights_core-3.0.57-py3.6.egg.

File metadata

  • Download URL: insights_core-3.0.57-py3.6.egg
  • Upload date:
  • Size: 3.2 MB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.13.0 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/2.7.15

File hashes

Hashes for insights_core-3.0.57-py3.6.egg
Algorithm Hash digest
SHA256 f5bef544e84513115952ceecf21b39a9bf4f4acaa72f804a699633c48176b487
MD5 396e640452270b85dad0f9003f22c6de
BLAKE2b-256 9e16e59cf9877eed5d1f541e674e30cd9c1976059e74c9bb22bd6e33d80d0279

See more details on using hashes here.

File details

Details for the file insights_core-3.0.57-py2.7.egg.

File metadata

  • Download URL: insights_core-3.0.57-py2.7.egg
  • Upload date:
  • Size: 3.2 MB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.13.0 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/2.7.15

File hashes

Hashes for insights_core-3.0.57-py2.7.egg
Algorithm Hash digest
SHA256 38de6a8bc2139be50889ae900ba29413084b45cc3a9712e3a260e004982bf98f
MD5 5bb08e592152c2305b2f93b3ccc25e2c
BLAKE2b-256 7ad2f3ba881006a4915f0ccd40d1597d1b3f3385fbc9e633fe4aa3bcd9a62e70

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