Skip to content

CloudWedge is an AWS Cloudwatch monitoring framework that accelerates your ability to get up and running with native AWS monitoring services.

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE
MIT
LICENSE.txt
Notifications You must be signed in to change notification settings

dwbelliston/cloudwedge

Repository files navigation

CloudWedge is an AWS Cloudwatch monitoring framework that accelerates your ability to get up and running with native AWS monitoring services.

CloudWedge

View Documentation: https://cloudwedge.1strategy.com

Roadmap Ideas

  • Add more AWS services (app/src/cloudwedge/services)
  • Add multi account and multi region dashboard views
  • Review permissions
  • Provide custom dashboard that is deployed into local dns
  • Streamline performance, maybe a way to minimally track state

Project structure

|-- app
|   |-- cloudwedge-spoke.yaml                 # Spoke template, deloyed from stackset resource in cloudwedge.yaml file
|   |-- cloudwedge.yaml                       # Core template. This is the magic.
|   |-- resources                             # Step function json configurations
|   `-- src                                   # CloudWedge lambda functions and logc
|-- package.json                              # Standard use, look here for all the scripts you can run
|-- publishing
|   |-- media                                 # Various images and media assests used in the app, published to s3
|   |-- publishing.yaml                       # Template file to setup some of the resources needed to provide this to the public
|   `-- scripts                               # Bash scripts for publishing the application
|-- docs/                                     # Markdown files for the retype page, published to Github pages
`-- retype.yml                                # Configurations for making the documentation page

Developing

The application is orchestrated with a step function, so to run it locally requires providing the inputs to each lambda function. The /app/src folder has each function, and its input.json file. That can be used for simulating the input it would receive from the step function. You can progress through the functions locally by taking the output of one, and then putting it in the input of the next. Review the step functions to understand the flow between the input and outputs.

Run a lambda locally

Check out the package.json file for running the functions. You can see the AWS SAM resource listed under the script. Such as

npm run local:get runs the lambda resource defined in the cloudwedge.yaml file called GetResourcesFunction

Debug locally

You can use the built in vscode debugger to get the step through debugging experience.

  • Drop this in the code

    # 🐛🐛🐛 #
    import debugpy; debugpy.listen(('0.0.0.0', 5858)); debugpy.wait_for_client(); debugpy.breakpoint()
    # 🐛🐛🐛 #
  • run the function via the npm scripts

    npm run local:get
  • Active the vscode debug file for the given function. Check out the .vscode/launch.json for configuration details.

📚 Developer Reference

Misc

AWS

Docs



🧃 0% Fruit Juice || 🍞 Gluten Free || 🇺🇸 Made In America

About

CloudWedge is an AWS Cloudwatch monitoring framework that accelerates your ability to get up and running with native AWS monitoring services.

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE
MIT
LICENSE.txt

Stars

Watchers

Forks

Releases

No releases published