Lambda function and Library for writing and reading logs to and from SQS or CloudWatch
Project description
AWS CloudLogger
This project allows for sending log messages from remote devices to AWS, either to a SQS FIFO queue or Cloudwatch. Additionally a library is included for managing and ingesting those logs via the python REPL.
Deployment
Download and install Serverless, then deploy the LogCatcher lambda
cd lambda_functions/LogCatcher
sls deploy
This sets up a Cloudwatch Log Group, an SQS FIFO queue, and an https endpoint in API Gateway. Requests sent to the https endpoint will be forwarded to either Cloudwatch or SQS (default) depending on the optional destination path parameter.
Usage
Producing
Producing log messages is done by sending https requests. These should be a post with the body being the json format of a standard Python LogRecord (i.e. you should be able to call logging.makeRecord(**record)
on it).
POST /logs/{destination}
{
"name": "foo",
"level": "INFO",
"pathname": "/home/user/Foo.py",
"lineno": 1337,
"message": "foo",
"args": null,
"exc_info": null,
"func": "Foo.foo",
"sinfo": ""
}
Consuming
Consuming log messages can be done via the Cloudwatch interface, or if using SQS, via the Python REPL. Consuming a message deletes it from the SQS queue.
from SQSLogger import SQSLogger
sl = SQSLogger()
sl.consume([name])
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 Distributions
Built Distribution
File details
Details for the file AWSCloudLogger-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: AWSCloudLogger-0.0.2-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1834604ff9584a55ea783b0dd582de9a84463863dfd0cb7b95ca255e506ab877 |
|
MD5 | b2c85e6a5f0cf57a521e3584e13678e3 |
|
BLAKE2b-256 | a70315531b17b52a733cf459fb8919d0e57d63d205439a554dc5df871fb29c2c |