AWS CloudWatch Logs Insights is wrapped by Python
Project description
PyInsights
A CLI tool To query CloudWatch Logs Insights.
ToC
Usage
Write Configuration
Write configuration to pyinsights.yml like:
version: '1.0'
log_group_name:
- '/ecs/sample'
query_string: 'field @message | filter @message like /ERROR/'
duration: '30m'
limit: 10
I wrote examples, so see examples folder.
Execute command
pyinsights -c pyinsights.yml -p aws_profile -r region
Configuration
version
| Type | Required |
|---|---|
| string | true |
Choose configuration version from ['1.0']
log_group_name
| Type | Required |
|---|---|
| array | true |
Target log group names to query
query_string
| Type | Required |
|---|---|
| string or array | true |
Specify CloudWatch Logs Insights query commands. Please see CloudWatch Logs Insights Query Syntax.
:warning: If query_string type is array, Unix-style pipe | is not required. Execute in order from the top.
ex)
query_string:
- 'field @message'
- 'fileter @message like /WARN/'
Equal to
query_string: 'field @message | fileter @message like /WARN/'
duration
| Type | Required |
|---|---|
| string or object | true |
type: string
Specify weeks, days, hours, minutes or seconds unit.
weeks = w
days = d
hours = h
minutes = m
seconds = s
ex)
duration: 10h
type: object
Specify start_time and end_time.
The format must be YYYY-MM-DD HH:MM:SS.
ex)
duration:
start_time: '2020-01-01 00:00:00'
end_time: '2020-01-01 01:00:00'
limit
| Type | Required |
|---|---|
| integer | false |
The number of log to fetch.
Of course, you can specify limit in query_string.
CLI Options
| Option | Required | Description |
|---|---|---|
| -c, --config | true | Specify yaml configuration by absolute or relative path |
| -f, --format | false | Choose from json or table |
| -p, --profile | false | AWS profile name |
| -r, --region | false | AWS region |
| -q, --quiet | false | Suppress progress message |
| -o, --output | false | Specify the filename to output the query result |
| -v, --version | false | Show version |
Environment Variable
If profile and region options are not specified, AWS Credentials must be set as environment variables.
- AWS_ACCESS_KEY_ID
- AWS_SECRET_ACCESS_KEY
- AWS_DEFAULT_REGION
Please see Environment Variable Configuration for the detail.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyinsights-0.4.2.tar.gz.
File metadata
- Download URL: pyinsights-0.4.2.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.5 CPython/3.8.2 Darwin/19.4.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9287b2516b4669ac7eae5bff5643ab86ecdfa00508515f6494559af25b50bb28
|
|
| MD5 |
7c9e883a0c286142538163f8950330c7
|
|
| BLAKE2b-256 |
852e572cadc13d31f0aa1b5db2a385313a04f391c9b52f764a5b8fbcb542bed7
|
File details
Details for the file pyinsights-0.4.2-py3-none-any.whl.
File metadata
- Download URL: pyinsights-0.4.2-py3-none-any.whl
- Upload date:
- Size: 13.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.0.5 CPython/3.8.2 Darwin/19.4.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bffd46ec3fbb701ca8614c6c2f6c738f82afd9d64e6a293846bf9ff0fa786400
|
|
| MD5 |
0848cfce88b084eab7b5c9c9bd9c6912
|
|
| BLAKE2b-256 |
fdd02d977949daee036a87a5c2c5b1833caba61f64b9e36ff6f0b2b8277c8a30
|