- Correct AlloyDB clusters exceeding max age
- Correct AlloyDB instances exceeding max age
- Correct Compute addresses if unattached
- Correct Compute disks attached to stopped instances
- Correct Compute disks exceeding max size
- Correct Compute disks if unattached
- Correct Compute disks with low usage
- Correct Compute engine instances exceeding max age
- Correct Compute engine instances large
- Correct Compute instances with low utilization
- Correct Compute node groups without autoscaling
- Correct Compute snapshots exceeding max age
- Correct Dataproc clusters without autoscaling
- Correct Kubernetes clusters exceeding max age
- Correct GKE clusters without vertical pod autoscaling
- Correct Logging Buckets with high retention period
- Correct one AlloyDB cluster exceeding max age
- Correct one AlloyDB instance exceeding max age
- Correct one Compute address if unattached
- Correct one Compute disk attached to stopped instance
- Correct one Compute disk exceeding max size
- Correct one Compute disk if unattached
- Correct one Compute disk with low usage
- Correct one Compute engine instance exceeding max age
- Correct one Compute engine instance large
- Correct one Compute instance with low utilization
- Correct one Compute node group without autoscaling
- Correct one Compute snapshot exceeding max age
- Correct one Dataproc clusters without autoscaling
- Correct one Kubernetes cluster exceeding max age
- Correct one GKE cluster without vertical pod autoscaling
- Correct one Logging Bucket with high retention period
- Correct one Redis instance exceeding max age
- Correct one SQL database instance exceeding max age
- Correct one SQL DB instance with low connection count
- Correct one SQL DB instance with low cpu utilization
- Correct one Storage bucket without lifecycle policies
- Correct one VPN gateway with no tunnels
- Correct Redis instances exceeding max age
- Correct SQL database instances exceeding max age
- Correct SQL DB instances with low connection count
- Correct SQL DB instances with low cpu utilization
- Correct Storage buckets without lifecycle policies
- Correct VPN gateways with no tunnels
- Detach & delete Compute disk
- Detect & correct AlloyDB clusters exceeding max age
- Detect & correct long-running AlloyDB instances exceeding max age
- Detect & correct Compute addresses if unattached
- Detect & correct Compute disks attached to stopped instances
- Detect & correct Compute disks exceeding max size
- Detect & correct Compute disks if unattached
- Detect & correct Compute disks with low usage
- Detect & correct Compute engine instances exceeding max age
- Detect & correct Compute engine instances large
- Detect & correct Compute instances with low utilization
- Detect & correct Compute node groups without autoscaling
- Detect & correct Compute snapshots exceeding max age
- Detect & correct Dataproc clusters without autoscaling
- Detect & correct Kubernetes clusters exceeding max age
- Detect & correct GKE clusters without vertical pod autoscaling
- Detect & correct Logging Buckets with high retention period
- Detect & correct Redis instances exceeding max age
- Detect & correct SQL database instances exceeding max age
- Detect & correct SQL DB instances with low connection count
- Detect & correct SQL DB instances with low cpu utilization
- Detect & correct Storage buckets without lifecycle policies
- Detect & correct VPN gateways with no tunnels
- Snapshot & Delete Compute disk
- Snapshot & Detach & Delete Compute disk
- Stop & downgrade Compute instance
Detect & correct SQL DB instances with low connection count
Overview
SQL instances can be costly to run, especially if they're rarely used, instances with low average connection counts per day should be reviewed to determine if they're still required.
This pipeline detects SQL instances with low average daily connections and then either sends a notification or attempts to perform a predefined corrective action.
Getting Started
This control will work out-of-the-box with some sensible defaults (configurable via variables).
You should be able to simply run the following command in your terminal:
flowpipe pipeline run detect_and_correct_sql_db_instances_with_low_connection_count
By default, Flowpipe runs in wizard mode and prompts directly in the terminal for a decision on the action(s) to take for each detected resource.
However, you can run Flowpipe in server mode with external integrations, allowing it to prompt for input via http
, slack
, teams
, etc.
Alternatively, you can choose to configure and run in other modes:
Run the pipeline
To run this pipeline from your terminal:
flowpipe pipeline run gcp_thrifty.pipeline.detect_and_correct_sql_db_instances_with_low_connection_count
Use this pipeline
To call this pipeline from your pipeline, use a step:
step "pipeline" "step_name" { pipeline = gcp_thrifty.pipeline.detect_and_correct_sql_db_instances_with_low_connection_count }
Params
Name | Type | Required | Description | Default |
---|---|---|---|---|
database | string | Yes | Database connection string. | postgres://steampipe@localhost:9193/steampipe |
notifier | string | Yes | The name of the notifier to use for sending notification messages. | default |
notification_level | string | Yes | The verbosity level of notification messages to send. Valid options are 'verbose', 'info', 'error'. | info |
approvers | list(string) | Yes | List of notifiers to be used for obtaining action/approval decisions. |
|
default_action | string | Yes | The default action to use for the detected item, used if no input is provided. | notify |
enabled_actions | list(string) | Yes | The list of enabled actions to provide to approvers for selection. |
|
Outputs
This pipeline has no outputs.