Skip to main content

Python Logger plugin to send logs to Rapid7 Insight

Project description

Rapid7 Insight Logger

This is a plugin library to enable logging to Rapid7 Insight from the Python Logger. Additionally this plugin allows the user to get an overview of methods being executed, their execution time, as well as CPU and Memory statistics. More info at https://www.rapid7.com/solutions/it-operations/. Note that this plugin is asynchronous.

Setup

To use this library, you must first create an account on Rapid7 Insight. This will only take a few moments.

Install

To install this library, use the following command:

pip install r7insight_python

Usage

#!/usr/bin/env python

import logging
from r7insight import R7InsightHandler


log = logging.getLogger('r7insight')
log.setLevel(logging.INFO)
test = R7InsightHandler(TOKEN, REGION)

log.addHandler(test)

log.warn("Warning message")
log.info("Info message")

sleep(10)

Usage with metric functionality

import time
import logging
from r7insight import R7InsightHandler, metrics


TEST = metrics.Metric(TOKEN, REGION)

@TEST.metric()
def function_one(t):
    """A dummy function that takes some time."""
    time.sleep(t)

if __name__ == '__main__':
        function_one(1)

Metric.Time()

This decorator function is used to log the execution time of given function. In the above example @TEST.time() will wrap function_one and send log message containing the name and execution time of this function.

Configure

The parameter TOKEN needs to be filled in to point to a file in your Insight account.

The parameter REGION needs to be filled with the region your log is located in. i.e: ‘eu’, ‘us’

In your R7Insight account, create a logfile, selecting Token TCP as the source_type. This will print a Token UUID. This is the value to use for TOKEN.

The appender will attempt to send your log data over TLS over port 443. You can also choose to not use TLS, in which case it will be sent over port 80. If the allow_plaintext_fallback option in the constructor is set to True, then the library will automatically fall back to an insecure connection on port 80 if TLS is not supported on the host system.

You are now ready to start logging.

Contact Support

Please email our support team at support@rapid7.com if you need any help.

Project details


Download files

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

Source Distribution

r7insight_python-1.0.0.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

r7insight_python-1.0.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file r7insight_python-1.0.0.tar.gz.

File metadata

  • Download URL: r7insight_python-1.0.0.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.20.0 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/2.7.15

File hashes

Hashes for r7insight_python-1.0.0.tar.gz
Algorithm Hash digest
SHA256 96c0e214a3a5b09d208f10368fa48402355c65a6181bc95a618f934c139322d9
MD5 7c040a17dbc33d87f2f50bfd2928c852
BLAKE2b-256 77edb3a4f2c8e16717f0d97ca92709b0d39de0f94bec36a58dbca6d87afcec78

See more details on using hashes here.

File details

Details for the file r7insight_python-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: r7insight_python-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.20.0 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/2.7.15

File hashes

Hashes for r7insight_python-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9300e6466a6b79ebd0d6f4e76b7985b1fd2f4e14809d7ce5a237c964faec15ed
MD5 ea72e64bae0bd8a63896a822cd6f5041
BLAKE2b-256 8a004b5a21178ee0139ff0458424eba0b82935b1f93054189bc951a7eda3145e

See more details on using hashes here.

Supported by

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