Metadata-Version: 2.1
Name: cdk-watchful
Version: 0.5.62
Summary: Watching your CDK apps since 2019
Home-page: https://github.com/eladb/cdk-watchful.git
Author: Elad Ben-Israel<elad.benisrael@gmail.com>
License: Apache-2.0
Project-URL: Source, https://github.com/eladb/cdk-watchful.git
Description: # cdk-watchful
        
        ![Release](https://github.com/eladb/cdk-watchful/workflows/Release/badge.svg)
        [![python](https://img.shields.io/badge/jsii-python-blueviolet.svg)](https://pypi.org/project/cdk-watchful/)
        [![typescript](https://img.shields.io/badge/jsii-typescript-blueviolet.svg)](https://www.npmjs.com/package/cdk-watchful)
        
        > Watching your CDK back since 2019
        
        Watchful is an [AWS CDK](https://github.com/awslabs/aws-cdk) construct library that makes it easy
        to monitor CDK apps.
        
        **TypeScript:**
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        from cdk_watchful import Watchful
        
        wf = Watchful(self, "watchful")
        wf.watch_dynamo_table("My Cute Little Table", my_table)
        wf.watch_lambda_function("My Function", my_function)
        wf.watch_api_gateway("My REST API", my_rest_api)
        ```
        
        **Python:**
        
        ```python
        from cdk_watchful import Watchful
        
        wf = Watchful(self, 'watchful')
        wf.watch_dynamo_table('My Cute Little Table', my_table)
        wf.watch_lambda_function('My Function', my_function)
        wf.watch_api_gateway('My REST API', my_rest_api)
        ```
        
        And...
        
        ![](https://raw.githubusercontent.com/eladb/cdk-watchful/master/example/sample.png)
        
        ## Install
        
        TypeScript/JavaScript:
        
        ```console
        $ npm install cdk-watchful
        ```
        
        Python:
        
        ```console
        $ pip install cdk-watchful
        ```
        
        ## Initialize
        
        To get started, just define a `Watchful` construct in your CDK app (code is in
        TypeScript, but python will work too). You can initialize using an email address, SQS arn or both:
        
        **TypeScript:**
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        from cdk_watchful import Watchful
        import aws_cdk.aws_sns as sns
        import aws_cdk.aws_sqs as sqs
        
        alarm_sqs = sqs.Queue.from_queue_arn(self, "AlarmQueue", "arn:aws:sqs:us-east-1:444455556666:alarm-queue")
        alarm_sns = sns.Topic.from_topic_arn(self, "AlarmTopic", "arn:aws:sns:us-east-2:444455556666:MyTopic")
        
        wf = Watchful(self, "watchful",
            alarm_email="your@email.com",
            alarm_sqs=alarm_sqs,
            alarm_sns=alarm_sns
        )
        ```
        
        **Python:**
        
        ```python
        from cdk_watchful import Watchful
        
        alarm_sqs = sqs.Queue.from_queue_arn(self, 'AlarmQueue', 'arn:aws:sqs:us-east-1:444455556666:alarm-queue')
        alarm_sns = sns.Topic.from_topic_arn(self, 'AlarmTopic', 'arn:aws:sns:us-east-2:444455556666:MyTopic')
        
        wf = Watchful(
          self,
          'watchful',
          alarm_email='your@amil.com',
          alarm_sqs=alarm_sqs,
          alarm_sns=alarm_sns
        ```
        
        ## Add Resources
        
        Watchful manages a central dashboard and configures default alarming for:
        
        * Amazon DynamoDB: `watchful.watchDynamoTable`
        * AWS Lambda: `watchful.watchLambdaFunction`
        * Amazon API Gateway: `watchful.watchApiGateway`
        * [Request yours](https://github.com/eladb/cdk-watchful/issues/new)
        
        ## Watching Scopes
        
        Watchful can also watch complete CDK construct scopes. It will automatically
        discover all watchable resources within that scope (recursively), add them
        to your dashboard and configure alarms for them.
        
        **TypeScript:**
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        wf.watch_scope(storage_layer)
        ```
        
        **Python:**
        
        ```python
        wf.watch_scope(storage_layer)
        ```
        
        ## API Reference
        
        See [API.md](./API.md).
        
        ## Example
        
        See a more complete [example](https://github.com/eladb/cdk-watchful/blob/master/example/index.ts).
        
        ## Contributing
        
        Contributions of all kinds are welcome and celebrated. Raise an issue, submit a PR, do the right thing.
        
        To set up a dev environment:
        
        1. Clone repo
        2. `yarn install`
        
        Development workflow (change code and run tests automatically):
        
        ```shell
        yarn test:watch
        ```
        
        Build (like CI):
        
        ```shell
        yarn build
        ```
        
        Release new versions:
        
        ```shell
        yarn bump
        ```
        
        And then publish as a PR.
        
        ## License
        
        [Apache 2.0](https://github.com/eladb/cdk-watchful/blob/master/LICENSE)
        
Platform: UNKNOWN
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: JavaScript
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Typing :: Typed
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved
Requires-Python: >=3.6
Description-Content-Type: text/markdown
