cid-cmd 4.3.0__tar.gz → 4.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {cid_cmd-4.3.0/cid_cmd.egg-info → cid_cmd-4.3.2}/PKG-INFO +14 -14
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/README.md +14 -14
- cid_cmd-4.3.2/cid/_version.py +2 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/resources.yaml +10 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/common.py +5 -2
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/export.py +2 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/cur.py +4 -1
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/cur_proxy.py +7 -9
- {cid_cmd-4.3.0 → cid_cmd-4.3.2/cid_cmd.egg-info}/PKG-INFO +14 -14
- cid_cmd-4.3.0/cid/_version.py +0 -2
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/LICENSE +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/MANIFEST.in +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/__init__.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/base.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/__init__.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/__init__.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/cid/compute.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/cid/ec2_running_cost.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/cid/s3_view.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/cid/summary_view.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/co/dataset.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/cudos/hourly_view.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/cudos/resource_view.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/kpi/kpi_ebs_snap.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/kpi/kpi_ebs_storage_all.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/kpi/kpi_instance_all.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/kpi/kpi_s3_storage_all.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/kpi/kpi_tracker.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/shared/customer_all.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/tao/dataset.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/trends/daily_anomaly_detection.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/trends/monthly_anomaly_detection.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/trends/monthly_bill_by_account.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/permissions/dashboard_permissions.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/permissions/dashboard_permissions_namespace.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/permissions/data_set_permissions.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/permissions/data_set_rls_permissions.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/permissions/data_source_permissions.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/permissions/folder_permissions.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/cid/compute_savings_plan_eligible_spend.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/cid/ec2_running_cost.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/cid/ri_sp_mapping.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/cid/s3.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/cid/summary_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/all_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/auto_scale.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/auto_scale_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/ebs_volume.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/ebs_volume_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/ec2_instance.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/ec2_instance_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/ecs_service.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/ecs_service_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/idle.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/idle_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/lambda.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/lambda_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/license.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/license_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/rds_database.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/rds_instance_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/co/rds_storage_options.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/cudos/hourly_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/cudos/resource_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/kpi/first_kpi_instance_mapping_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/kpi/kpi_ebs_snap_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/kpi/kpi_ebs_storage_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/kpi/kpi_instance_all_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/kpi/kpi_s3_storage_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/kpi/last_kpi_tracker_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/account_map.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/account_map_cur2.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/account_map_dummy.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/aws_accounts.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/aws_regions.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/aws_service_category_map.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/business_units_map.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/cur.yaml +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/customer_all_unlimited.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/payer_account_name_map.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/ta_descriptions.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/tao/glue_table.json +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/tao/ta_org_view.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/trends/daily_anomaly_detection.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/trends/monthly_anomaly_detection.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/trends/monthly_bill_by_account.sql +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/cli.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/commands/__init__.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/commands/command_base.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/commands/init_qs.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/exceptions.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/__init__.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/account_map.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/athena.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/cloudformation.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/csv2view.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/diff.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/glue.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/iam.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/organizations.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/parameter_store.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/quicksight/__init__.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/quicksight/dashboard.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/quicksight/dashboard_patching.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/quicksight/dataset.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/quicksight/datasource.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/quicksight/definition.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/quicksight/resource.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/quicksight/template.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/quicksight/version.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/randtime.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/s3.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/helpers/timezone.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/logger.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/plugin.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/test/python/test_csv2view.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/test/python/test_isolated_parameters.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/test/python/test_merge.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/utils.py +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid_cmd.egg-info/SOURCES.txt +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid_cmd.egg-info/dependency_links.txt +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid_cmd.egg-info/entry_points.txt +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid_cmd.egg-info/requires.txt +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid_cmd.egg-info/top_level.txt +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/pyproject.toml +0 -0
- {cid_cmd-4.3.0 → cid_cmd-4.3.2}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cid-cmd
|
|
3
|
-
Version: 4.3.
|
|
3
|
+
Version: 4.3.2
|
|
4
4
|
Summary: Cloud Intelligence Dashboards deployment helper tool
|
|
5
5
|
Home-page: https://github.com/aws-samples/aws-cudos-framework-deployment
|
|
6
6
|
Author: AWS CUDOS Team
|
|
@@ -49,15 +49,15 @@ Dynamic: license-file
|
|
|
49
49
|
## Overview
|
|
50
50
|
The Cloud Intelligence Dashboards is an open-source framework, lovingly cultivated and maintained by a group of customer-obsessed AWSers, that gives customers the power to get high-level and granular insight into their cost and usage data. Supported by the Well-Architected framework, the dashboards can be deployed by any customer using a CloudFormation template or a command-line tool in their environment in under 30 minutes. These dashboards help you to drive financial accountability, optimize cost, track usage goals, implement best-practices for governance, and achieve operational excellence across all your organization.
|
|
51
51
|
|
|
52
|
-
Cloud Intelligence Dashboards Framework provides AWS customers with [more then 20 Dashboards](https://
|
|
52
|
+
Cloud Intelligence Dashboards Framework provides AWS customers with [more then 20 Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html).
|
|
53
53
|
* Foundational Dashboards - A set of main Dashboards that only require Cost and Usage Report(CUR)
|
|
54
54
|
* Advanced Dashboards - Require CID Data Collection and CUR
|
|
55
55
|
* Additional Dashboards - Require various custom datasources or created for very specific use cases.
|
|
56
56
|
|
|
57
|
-
We recommend starting with deployment of [Foundational Dashboards](https://
|
|
57
|
+
We recommend starting with deployment of [Foundational Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboard-foundational.html). Then deploy [Data Collection](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/data-collection.html) and [Advanced Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#advanced-dashboards). Check for [Additional](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#additional) Dashboards.
|
|
58
58
|
|
|
59
59
|
|
|
60
|
-
[](https://
|
|
60
|
+
[](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/deployment-in-global-regions.html)
|
|
61
61
|
|
|
62
62
|
|
|
63
63
|
## Architecture of Foundational Dashboards
|
|
@@ -67,9 +67,9 @@ We recommend starting with deployment of [Foundational Dashboards](https://catal
|
|
|
67
67
|
2. [Amazon S3](https://aws.amazon.com/s3/) replication rule copies Export data to a dedicated Data Collection Account S3 bucket automatically.
|
|
68
68
|
3. [Amazon Athena](https://aws.amazon.com/athena/) allows querying data directly from the S3 bucket using an [AWS Glue](https://aws.amazon.com/glue/) table schema definition.
|
|
69
69
|
4. [Amazon QuickSight](https://aws.amazon.com/quicksight/) creates datasets from [Amazon Athena](https://aws.amazon.com/athena/), refreshes daily and caches in [SPICE](https://docs.aws.amazon.com/quicksight/latest/user/spice.html)(Super-fast, Parallel, In-memory Calculation Engine) for [Amazon QuickSight](https://aws.amazon.com/quicksight/)
|
|
70
|
-
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://
|
|
70
|
+
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/row-level-security.html).
|
|
71
71
|
|
|
72
|
-
This foundational architecture is recommended for starting and allows deployment of [Foundational Dashboards](https://
|
|
72
|
+
This foundational architecture is recommended for starting and allows deployment of [Foundational Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboard-foundational.html) like CUDOS, CID and KPI.
|
|
73
73
|
|
|
74
74
|
## Architecture of Advanced Dashboards
|
|
75
75
|

|
|
@@ -78,14 +78,14 @@ This foundational architecture is recommended for starting and allows deployment
|
|
|
78
78
|
2. [Amazon S3](https://aws.amazon.com/s3/) replication rule copies Export data to a dedicated Data Collection Account S3 bucket automatically.
|
|
79
79
|
3. [Amazon Athena](https://aws.amazon.com/athena/) allows querying data directly from the S3 bucket using an [AWS Glue](https://aws.amazon.com/glue/) table schema definition.
|
|
80
80
|
4. [Amazon QuickSight](https://aws.amazon.com/quicksight/) creates datasets from [Amazon Athena](https://aws.amazon.com/athena/), refreshes daily and caches in [SPICE](https://docs.aws.amazon.com/quicksight/latest/user/spice.html)(Super-fast, Parallel, In-memory Calculation Engine) for [Amazon QuickSight](https://aws.amazon.com/quicksight/)
|
|
81
|
-
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://
|
|
81
|
+
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/row-level-security.html).
|
|
82
82
|
6. Optionally, the Advanced data collection can be deployed to enable advanced dashboards based on [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/), [AWS Health](https://aws.amazon.com/premiumsupport/technology/aws-health-dashboard/) Events and other sources. Additional data is retrieved from [AWS Organizations](https://aws.amazon.com/organizations/) or Linked Accounts. In this case [Amazon EventBridge](https://aws.amazon.com/eventbridge/) rule triggers an [AWS Step Functions](https://aws.amazon.com/step-functions/) workflow for data collection modules on a configurable schedule.
|
|
83
83
|
7. The "Account Collector" [AWS Lambda](https://aws.amazon.com/lambda/) in AWS Step Functions retrieves linked account details using AWS Organizations API.
|
|
84
84
|
8. The "Data Collection" Lambda function in AWS Step Functions assumes role in each linked account to retrieve account-specific data via [AWS SDK](https://aws.amazon.com/developer/tools/).
|
|
85
85
|
9. Retrieved data is stored in a centralized Amazon S3 Bucket.
|
|
86
|
-
10. [Advanced Cloud Intelligence Dashboards](https://
|
|
86
|
+
10. [Advanced Cloud Intelligence Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#advanced-dashboards) leverage Amazon Athena and Amazon QuickSight for comprehensive data analysis.
|
|
87
87
|
|
|
88
|
-
This advanced data collection architecture allows deployment of [Advanced Dashboards](https://
|
|
88
|
+
This advanced data collection architecture allows deployment of [Advanced Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#advanced-dashboards) like Trusted Advisor Dashboard, Health, Graviton, Compute Optimizer Dashboard and many more.
|
|
89
89
|
|
|
90
90
|
|
|
91
91
|
## Cost
|
|
@@ -154,23 +154,23 @@ There are several ways we can deploy dashboards:
|
|
|
154
154
|
1. Using cid-cmd tool from command line
|
|
155
155
|
1. [CloudFormation Template](./cfn-templates/cid-cfn.yml) using cid-cmd tool in Amazon Lambda. (Recommended)
|
|
156
156
|
|
|
157
|
-
Please refer to the deployment documentation [here](https://
|
|
157
|
+
Please refer to the deployment documentation [here](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/deployment-in-global-regions.html).
|
|
158
158
|
|
|
159
|
-
[](https://
|
|
159
|
+
[](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/deployment-in-global-regions.html)
|
|
160
160
|
|
|
161
161
|
|
|
162
162
|
## Cleanup
|
|
163
|
-
Please refer to the documentation [here](https://
|
|
163
|
+
Please refer to the documentation [here](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboard-teardown.html).
|
|
164
164
|
|
|
165
165
|
## FAQ
|
|
166
|
-
Please refer to the documentation [here](https://
|
|
166
|
+
Please refer to the documentation [here](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/faq.html).
|
|
167
167
|
|
|
168
168
|
## Changelogs
|
|
169
169
|
For dashboards please check Change Logs [here](changes/)
|
|
170
170
|
For CID deployment tool, including Cli and CFN please check [Releases](/releases)
|
|
171
171
|
|
|
172
172
|
## Feedback
|
|
173
|
-
Please reference to [this page](https://
|
|
173
|
+
Please reference to [this page](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/feedback-support.html)
|
|
174
174
|
|
|
175
175
|
## Security
|
|
176
176
|
When you build systems on AWS infrastructure, security responsibilities are shared between you and AWS. This [shared responsibility
|
|
@@ -21,15 +21,15 @@
|
|
|
21
21
|
## Overview
|
|
22
22
|
The Cloud Intelligence Dashboards is an open-source framework, lovingly cultivated and maintained by a group of customer-obsessed AWSers, that gives customers the power to get high-level and granular insight into their cost and usage data. Supported by the Well-Architected framework, the dashboards can be deployed by any customer using a CloudFormation template or a command-line tool in their environment in under 30 minutes. These dashboards help you to drive financial accountability, optimize cost, track usage goals, implement best-practices for governance, and achieve operational excellence across all your organization.
|
|
23
23
|
|
|
24
|
-
Cloud Intelligence Dashboards Framework provides AWS customers with [more then 20 Dashboards](https://
|
|
24
|
+
Cloud Intelligence Dashboards Framework provides AWS customers with [more then 20 Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html).
|
|
25
25
|
* Foundational Dashboards - A set of main Dashboards that only require Cost and Usage Report(CUR)
|
|
26
26
|
* Advanced Dashboards - Require CID Data Collection and CUR
|
|
27
27
|
* Additional Dashboards - Require various custom datasources or created for very specific use cases.
|
|
28
28
|
|
|
29
|
-
We recommend starting with deployment of [Foundational Dashboards](https://
|
|
29
|
+
We recommend starting with deployment of [Foundational Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboard-foundational.html). Then deploy [Data Collection](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/data-collection.html) and [Advanced Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#advanced-dashboards). Check for [Additional](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#additional) Dashboards.
|
|
30
30
|
|
|
31
31
|
|
|
32
|
-
[](https://
|
|
32
|
+
[](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/deployment-in-global-regions.html)
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
## Architecture of Foundational Dashboards
|
|
@@ -39,9 +39,9 @@ We recommend starting with deployment of [Foundational Dashboards](https://catal
|
|
|
39
39
|
2. [Amazon S3](https://aws.amazon.com/s3/) replication rule copies Export data to a dedicated Data Collection Account S3 bucket automatically.
|
|
40
40
|
3. [Amazon Athena](https://aws.amazon.com/athena/) allows querying data directly from the S3 bucket using an [AWS Glue](https://aws.amazon.com/glue/) table schema definition.
|
|
41
41
|
4. [Amazon QuickSight](https://aws.amazon.com/quicksight/) creates datasets from [Amazon Athena](https://aws.amazon.com/athena/), refreshes daily and caches in [SPICE](https://docs.aws.amazon.com/quicksight/latest/user/spice.html)(Super-fast, Parallel, In-memory Calculation Engine) for [Amazon QuickSight](https://aws.amazon.com/quicksight/)
|
|
42
|
-
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://
|
|
42
|
+
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/row-level-security.html).
|
|
43
43
|
|
|
44
|
-
This foundational architecture is recommended for starting and allows deployment of [Foundational Dashboards](https://
|
|
44
|
+
This foundational architecture is recommended for starting and allows deployment of [Foundational Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboard-foundational.html) like CUDOS, CID and KPI.
|
|
45
45
|
|
|
46
46
|
## Architecture of Advanced Dashboards
|
|
47
47
|

|
|
@@ -50,14 +50,14 @@ This foundational architecture is recommended for starting and allows deployment
|
|
|
50
50
|
2. [Amazon S3](https://aws.amazon.com/s3/) replication rule copies Export data to a dedicated Data Collection Account S3 bucket automatically.
|
|
51
51
|
3. [Amazon Athena](https://aws.amazon.com/athena/) allows querying data directly from the S3 bucket using an [AWS Glue](https://aws.amazon.com/glue/) table schema definition.
|
|
52
52
|
4. [Amazon QuickSight](https://aws.amazon.com/quicksight/) creates datasets from [Amazon Athena](https://aws.amazon.com/athena/), refreshes daily and caches in [SPICE](https://docs.aws.amazon.com/quicksight/latest/user/spice.html)(Super-fast, Parallel, In-memory Calculation Engine) for [Amazon QuickSight](https://aws.amazon.com/quicksight/)
|
|
53
|
-
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://
|
|
53
|
+
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/row-level-security.html).
|
|
54
54
|
6. Optionally, the Advanced data collection can be deployed to enable advanced dashboards based on [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/), [AWS Health](https://aws.amazon.com/premiumsupport/technology/aws-health-dashboard/) Events and other sources. Additional data is retrieved from [AWS Organizations](https://aws.amazon.com/organizations/) or Linked Accounts. In this case [Amazon EventBridge](https://aws.amazon.com/eventbridge/) rule triggers an [AWS Step Functions](https://aws.amazon.com/step-functions/) workflow for data collection modules on a configurable schedule.
|
|
55
55
|
7. The "Account Collector" [AWS Lambda](https://aws.amazon.com/lambda/) in AWS Step Functions retrieves linked account details using AWS Organizations API.
|
|
56
56
|
8. The "Data Collection" Lambda function in AWS Step Functions assumes role in each linked account to retrieve account-specific data via [AWS SDK](https://aws.amazon.com/developer/tools/).
|
|
57
57
|
9. Retrieved data is stored in a centralized Amazon S3 Bucket.
|
|
58
|
-
10. [Advanced Cloud Intelligence Dashboards](https://
|
|
58
|
+
10. [Advanced Cloud Intelligence Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#advanced-dashboards) leverage Amazon Athena and Amazon QuickSight for comprehensive data analysis.
|
|
59
59
|
|
|
60
|
-
This advanced data collection architecture allows deployment of [Advanced Dashboards](https://
|
|
60
|
+
This advanced data collection architecture allows deployment of [Advanced Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#advanced-dashboards) like Trusted Advisor Dashboard, Health, Graviton, Compute Optimizer Dashboard and many more.
|
|
61
61
|
|
|
62
62
|
|
|
63
63
|
## Cost
|
|
@@ -126,23 +126,23 @@ There are several ways we can deploy dashboards:
|
|
|
126
126
|
1. Using cid-cmd tool from command line
|
|
127
127
|
1. [CloudFormation Template](./cfn-templates/cid-cfn.yml) using cid-cmd tool in Amazon Lambda. (Recommended)
|
|
128
128
|
|
|
129
|
-
Please refer to the deployment documentation [here](https://
|
|
129
|
+
Please refer to the deployment documentation [here](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/deployment-in-global-regions.html).
|
|
130
130
|
|
|
131
|
-
[](https://
|
|
131
|
+
[](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/deployment-in-global-regions.html)
|
|
132
132
|
|
|
133
133
|
|
|
134
134
|
## Cleanup
|
|
135
|
-
Please refer to the documentation [here](https://
|
|
135
|
+
Please refer to the documentation [here](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboard-teardown.html).
|
|
136
136
|
|
|
137
137
|
## FAQ
|
|
138
|
-
Please refer to the documentation [here](https://
|
|
138
|
+
Please refer to the documentation [here](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/faq.html).
|
|
139
139
|
|
|
140
140
|
## Changelogs
|
|
141
141
|
For dashboards please check Change Logs [here](changes/)
|
|
142
142
|
For CID deployment tool, including Cli and CFN please check [Releases](/releases)
|
|
143
143
|
|
|
144
144
|
## Feedback
|
|
145
|
-
Please reference to [this page](https://
|
|
145
|
+
Please reference to [this page](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/feedback-support.html)
|
|
146
146
|
|
|
147
147
|
## Security
|
|
148
148
|
When you build systems on AWS infrastructure, security responsibilities are shared between you and AWS. This [shared responsibility
|
|
@@ -156,4 +156,4 @@ See [CONTRIBUTING](CONTRIBUTING.md#security-issue-notifications) for more inform
|
|
|
156
156
|
This library is licensed under the MIT-0 License. See the [LICENSE](LICENSE) file.
|
|
157
157
|
|
|
158
158
|
## Notices
|
|
159
|
-
Dashboards and their content: (a) are for informational purposes only, (b) represents current AWS product offerings and practices, which are subject to change without notice, and (c) does not create any commitments or assurances from AWS and its affiliates, suppliers or licensors. AWS content, products or services are provided “as is” without warranties, representations, or conditions of any kind, whether express or implied. The responsibilities and liabilities of AWS to its customers are controlled by AWS agreements, and this document is not part of, nor does it modify, any agreement between AWS and its customers.
|
|
159
|
+
Dashboards and their content: (a) are for informational purposes only, (b) represents current AWS product offerings and practices, which are subject to change without notice, and (c) does not create any commitments or assurances from AWS and its affiliates, suppliers or licensors. AWS content, products or services are provided “as is” without warranties, representations, or conditions of any kind, whether express or implied. The responsibilities and liabilities of AWS to its customers are controlled by AWS agreements, and this document is not part of, nor does it modify, any agreement between AWS and its customers.
|
|
@@ -514,6 +514,8 @@ views:
|
|
|
514
514
|
summary_view:
|
|
515
515
|
File: queries/cid/summary_view.sql
|
|
516
516
|
dependsOn:
|
|
517
|
+
views:
|
|
518
|
+
- cur2_view
|
|
517
519
|
tags: json
|
|
518
520
|
cur2:
|
|
519
521
|
- bill_billing_entity
|
|
@@ -557,6 +559,14 @@ views:
|
|
|
557
559
|
- savings_plan_total_commitment_to_date
|
|
558
560
|
- savings_plan_used_commitment
|
|
559
561
|
|
|
562
|
+
cur2_view:
|
|
563
|
+
dependsOn:
|
|
564
|
+
cur2: True
|
|
565
|
+
data: |
|
|
566
|
+
CREATE VIEW "cur2_view" AS
|
|
567
|
+
SELECT *
|
|
568
|
+
FROM "${cur2_database}"."${cur2_table_name}"
|
|
569
|
+
|
|
560
570
|
ec2_running_cost:
|
|
561
571
|
File: queries/cid/ec2_running_cost.sql
|
|
562
572
|
dependsOn:
|
|
@@ -410,7 +410,7 @@ class Cid():
|
|
|
410
410
|
else:
|
|
411
411
|
if 'query' not in value:
|
|
412
412
|
raise CidCritical(f'Failed fetching parameter {prefix}{key}: parameter with type Athena must have query value.')
|
|
413
|
-
query = Template(value['query']).safe_substitute(others)
|
|
413
|
+
query = Template(value['query']).safe_substitute(params|others)
|
|
414
414
|
try:
|
|
415
415
|
res_list = self.athena.query(query)
|
|
416
416
|
except (self.athena.client.exceptions.ClientError, CidError, CidCritical) as exc:
|
|
@@ -1916,7 +1916,10 @@ class Cid():
|
|
|
1916
1916
|
if not resource_tags:
|
|
1917
1917
|
return "'{}'"
|
|
1918
1918
|
logger.debug(f'selected_tag_names = {resource_tags}')
|
|
1919
|
-
array = ',\n '.join(
|
|
1919
|
+
array = ',\n '.join(
|
|
1920
|
+
[f"('{name}', {tags_and_names[name]})"
|
|
1921
|
+
for name in resource_tags]
|
|
1922
|
+
)
|
|
1920
1923
|
res = f'''
|
|
1921
1924
|
json_format(
|
|
1922
1925
|
CAST (
|
|
@@ -270,6 +270,8 @@ def export_analysis(qs, athena, glue):
|
|
|
270
270
|
logger.debug(f'{dep_view_name} is not cur')
|
|
271
271
|
if dep_view_name not in all_views_data:
|
|
272
272
|
logger.debug(f'{dep_view_name} skipping as not in the views list')
|
|
273
|
+
if dep_view_name in ['account_map']:
|
|
274
|
+
logger.debug(f'{dep_view_name} is a special. skip.')
|
|
273
275
|
non_cur_dep_views.append(dep_view_name)
|
|
274
276
|
if deps.get('views'):
|
|
275
277
|
deps['views'] = non_cur_dep_views
|
|
@@ -299,7 +299,10 @@ class CUR(AbstractCUR):
|
|
|
299
299
|
)
|
|
300
300
|
if answer == '<CREATE CUR TABLE AND CRAWLER>':
|
|
301
301
|
raise CidCritical('CUR creation was requested') # to be captured in common.py
|
|
302
|
-
|
|
302
|
+
if isinstance(answer, str) and '.' in answer and len(answer.split('.')) == 2:
|
|
303
|
+
database, table = answer.split('.')
|
|
304
|
+
else:
|
|
305
|
+
database, table = answer
|
|
303
306
|
set_parameters({'cur-table-name': table,'cur-database': database, })
|
|
304
307
|
return database, self.athena.get_table_metadata(table, database_name=database)
|
|
305
308
|
|
|
@@ -400,8 +400,8 @@ class ProxyView():
|
|
|
400
400
|
MAP(ARRAY['key1', 'key2'], ARRAY[value1, value2])
|
|
401
401
|
'''
|
|
402
402
|
arrays = re.findall(r'ARRAY\[(.*?)\]', mapping_string) # Extract arrays from the string
|
|
403
|
-
keys = arrays[0].
|
|
404
|
-
values = arrays[1].
|
|
403
|
+
keys = arrays[0].replace("'", '').split(',') # Split arrays into elements
|
|
404
|
+
values = arrays[1].split(',') # FIXME: the values can be more complex then just columns and ma potentially include comma in some rare cases.
|
|
405
405
|
return {key.strip(): value.strip() for key, value in zip(keys, values)}
|
|
406
406
|
|
|
407
407
|
_current_sql = '\n'.join([line[0] for line in self.athena.query(f'SHOW CREATE VIEW {self.name}')])
|
|
@@ -417,9 +417,9 @@ class ProxyView():
|
|
|
417
417
|
logger.warning(f'Cannot find map {field} definition in the view {self.name}. It must be defined as MAP.')
|
|
418
418
|
continue
|
|
419
419
|
current_map = _parse_mapping_string(maps[0])
|
|
420
|
-
logger.debug(f'current definition of {field}
|
|
421
|
-
self.exposed_maps[field].update([key
|
|
422
|
-
logger.debug(f'{self.exposed_maps}')
|
|
420
|
+
logger.debug(f'current definition of {field} = {current_map}')
|
|
421
|
+
self.exposed_maps[field].update([key for key in current_map])
|
|
422
|
+
logger.debug(f'exposed_maps = {self.exposed_maps}')
|
|
423
423
|
|
|
424
424
|
def source_column_equivalents(self, field):
|
|
425
425
|
""" Given a field of cur return an equivalent field in the target cur system. This one does not care if field actually exists
|
|
@@ -505,7 +505,7 @@ class ProxyView():
|
|
|
505
505
|
if field_type.lower().startswith('map'):
|
|
506
506
|
map_field = field.split('[')[0]
|
|
507
507
|
map_mapping = {}
|
|
508
|
-
keys_set = set(self.exposed_maps.get(
|
|
508
|
+
keys_set = set(self.exposed_maps.get(map_field, set()))
|
|
509
509
|
keys_set.update(self.fields_to_expose_in_maps.get(map_field, set()))
|
|
510
510
|
for key in keys_set:
|
|
511
511
|
map_field_key = f'{map_field}_{key}'
|
|
@@ -514,7 +514,7 @@ class ProxyView():
|
|
|
514
514
|
map_field_key = f'"{map_field_key}"'
|
|
515
515
|
map_mapping[key] = map_field_key
|
|
516
516
|
else:
|
|
517
|
-
map_mapping[key] = empty['string'] # all known maps have string
|
|
517
|
+
map_mapping[key] = empty['string'] # all known maps have string values for now
|
|
518
518
|
if not map_mapping:
|
|
519
519
|
return 'cast(NULL AS MAP<VARCHAR, VARCHAR>)'
|
|
520
520
|
map_mapping = dict(sorted(map_mapping.items())) # ordered dict
|
|
@@ -566,8 +566,6 @@ class ProxyView():
|
|
|
566
566
|
lines = {}
|
|
567
567
|
for field in all_target_fields:
|
|
568
568
|
target_field = self.get_fields_from_sql(field)[0]
|
|
569
|
-
if target_field not in self.exposed_fields:
|
|
570
|
-
something_changed = True
|
|
571
569
|
target_field_type = self.cur.get_type_of_column(target_field, self.target_cur_version)
|
|
572
570
|
logger.trace(f'get_sql_expression {field} {target_field_type}')
|
|
573
571
|
mapped_expression = self.get_sql_expression(field, target_field_type) #
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cid-cmd
|
|
3
|
-
Version: 4.3.
|
|
3
|
+
Version: 4.3.2
|
|
4
4
|
Summary: Cloud Intelligence Dashboards deployment helper tool
|
|
5
5
|
Home-page: https://github.com/aws-samples/aws-cudos-framework-deployment
|
|
6
6
|
Author: AWS CUDOS Team
|
|
@@ -49,15 +49,15 @@ Dynamic: license-file
|
|
|
49
49
|
## Overview
|
|
50
50
|
The Cloud Intelligence Dashboards is an open-source framework, lovingly cultivated and maintained by a group of customer-obsessed AWSers, that gives customers the power to get high-level and granular insight into their cost and usage data. Supported by the Well-Architected framework, the dashboards can be deployed by any customer using a CloudFormation template or a command-line tool in their environment in under 30 minutes. These dashboards help you to drive financial accountability, optimize cost, track usage goals, implement best-practices for governance, and achieve operational excellence across all your organization.
|
|
51
51
|
|
|
52
|
-
Cloud Intelligence Dashboards Framework provides AWS customers with [more then 20 Dashboards](https://
|
|
52
|
+
Cloud Intelligence Dashboards Framework provides AWS customers with [more then 20 Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html).
|
|
53
53
|
* Foundational Dashboards - A set of main Dashboards that only require Cost and Usage Report(CUR)
|
|
54
54
|
* Advanced Dashboards - Require CID Data Collection and CUR
|
|
55
55
|
* Additional Dashboards - Require various custom datasources or created for very specific use cases.
|
|
56
56
|
|
|
57
|
-
We recommend starting with deployment of [Foundational Dashboards](https://
|
|
57
|
+
We recommend starting with deployment of [Foundational Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboard-foundational.html). Then deploy [Data Collection](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/data-collection.html) and [Advanced Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#advanced-dashboards). Check for [Additional](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#additional) Dashboards.
|
|
58
58
|
|
|
59
59
|
|
|
60
|
-
[](https://
|
|
60
|
+
[](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/deployment-in-global-regions.html)
|
|
61
61
|
|
|
62
62
|
|
|
63
63
|
## Architecture of Foundational Dashboards
|
|
@@ -67,9 +67,9 @@ We recommend starting with deployment of [Foundational Dashboards](https://catal
|
|
|
67
67
|
2. [Amazon S3](https://aws.amazon.com/s3/) replication rule copies Export data to a dedicated Data Collection Account S3 bucket automatically.
|
|
68
68
|
3. [Amazon Athena](https://aws.amazon.com/athena/) allows querying data directly from the S3 bucket using an [AWS Glue](https://aws.amazon.com/glue/) table schema definition.
|
|
69
69
|
4. [Amazon QuickSight](https://aws.amazon.com/quicksight/) creates datasets from [Amazon Athena](https://aws.amazon.com/athena/), refreshes daily and caches in [SPICE](https://docs.aws.amazon.com/quicksight/latest/user/spice.html)(Super-fast, Parallel, In-memory Calculation Engine) for [Amazon QuickSight](https://aws.amazon.com/quicksight/)
|
|
70
|
-
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://
|
|
70
|
+
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/row-level-security.html).
|
|
71
71
|
|
|
72
|
-
This foundational architecture is recommended for starting and allows deployment of [Foundational Dashboards](https://
|
|
72
|
+
This foundational architecture is recommended for starting and allows deployment of [Foundational Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboard-foundational.html) like CUDOS, CID and KPI.
|
|
73
73
|
|
|
74
74
|
## Architecture of Advanced Dashboards
|
|
75
75
|

|
|
@@ -78,14 +78,14 @@ This foundational architecture is recommended for starting and allows deployment
|
|
|
78
78
|
2. [Amazon S3](https://aws.amazon.com/s3/) replication rule copies Export data to a dedicated Data Collection Account S3 bucket automatically.
|
|
79
79
|
3. [Amazon Athena](https://aws.amazon.com/athena/) allows querying data directly from the S3 bucket using an [AWS Glue](https://aws.amazon.com/glue/) table schema definition.
|
|
80
80
|
4. [Amazon QuickSight](https://aws.amazon.com/quicksight/) creates datasets from [Amazon Athena](https://aws.amazon.com/athena/), refreshes daily and caches in [SPICE](https://docs.aws.amazon.com/quicksight/latest/user/spice.html)(Super-fast, Parallel, In-memory Calculation Engine) for [Amazon QuickSight](https://aws.amazon.com/quicksight/)
|
|
81
|
-
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://
|
|
81
|
+
5. User Teams (Executives, FinOps, Engineers) can access Cloud Intelligence Dashboards in [Amazon QuickSight](https://aws.amazon.com/quicksight/). Access is secured through [AWS IAM](https://aws.amazon.com/iam/), IIC ([AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/), formerly SSO), and optional [Row Level Security](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/row-level-security.html).
|
|
82
82
|
6. Optionally, the Advanced data collection can be deployed to enable advanced dashboards based on [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/), [AWS Health](https://aws.amazon.com/premiumsupport/technology/aws-health-dashboard/) Events and other sources. Additional data is retrieved from [AWS Organizations](https://aws.amazon.com/organizations/) or Linked Accounts. In this case [Amazon EventBridge](https://aws.amazon.com/eventbridge/) rule triggers an [AWS Step Functions](https://aws.amazon.com/step-functions/) workflow for data collection modules on a configurable schedule.
|
|
83
83
|
7. The "Account Collector" [AWS Lambda](https://aws.amazon.com/lambda/) in AWS Step Functions retrieves linked account details using AWS Organizations API.
|
|
84
84
|
8. The "Data Collection" Lambda function in AWS Step Functions assumes role in each linked account to retrieve account-specific data via [AWS SDK](https://aws.amazon.com/developer/tools/).
|
|
85
85
|
9. Retrieved data is stored in a centralized Amazon S3 Bucket.
|
|
86
|
-
10. [Advanced Cloud Intelligence Dashboards](https://
|
|
86
|
+
10. [Advanced Cloud Intelligence Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#advanced-dashboards) leverage Amazon Athena and Amazon QuickSight for comprehensive data analysis.
|
|
87
87
|
|
|
88
|
-
This advanced data collection architecture allows deployment of [Advanced Dashboards](https://
|
|
88
|
+
This advanced data collection architecture allows deployment of [Advanced Dashboards](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboards.html#advanced-dashboards) like Trusted Advisor Dashboard, Health, Graviton, Compute Optimizer Dashboard and many more.
|
|
89
89
|
|
|
90
90
|
|
|
91
91
|
## Cost
|
|
@@ -154,23 +154,23 @@ There are several ways we can deploy dashboards:
|
|
|
154
154
|
1. Using cid-cmd tool from command line
|
|
155
155
|
1. [CloudFormation Template](./cfn-templates/cid-cfn.yml) using cid-cmd tool in Amazon Lambda. (Recommended)
|
|
156
156
|
|
|
157
|
-
Please refer to the deployment documentation [here](https://
|
|
157
|
+
Please refer to the deployment documentation [here](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/deployment-in-global-regions.html).
|
|
158
158
|
|
|
159
|
-
[](https://
|
|
159
|
+
[](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/deployment-in-global-regions.html)
|
|
160
160
|
|
|
161
161
|
|
|
162
162
|
## Cleanup
|
|
163
|
-
Please refer to the documentation [here](https://
|
|
163
|
+
Please refer to the documentation [here](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/dashboard-teardown.html).
|
|
164
164
|
|
|
165
165
|
## FAQ
|
|
166
|
-
Please refer to the documentation [here](https://
|
|
166
|
+
Please refer to the documentation [here](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/faq.html).
|
|
167
167
|
|
|
168
168
|
## Changelogs
|
|
169
169
|
For dashboards please check Change Logs [here](changes/)
|
|
170
170
|
For CID deployment tool, including Cli and CFN please check [Releases](/releases)
|
|
171
171
|
|
|
172
172
|
## Feedback
|
|
173
|
-
Please reference to [this page](https://
|
|
173
|
+
Please reference to [this page](https://docs.aws.amazon.com/guidance/latest/cloud-intelligence-dashboards/feedback-support.html)
|
|
174
174
|
|
|
175
175
|
## Security
|
|
176
176
|
When you build systems on AWS infrastructure, security responsibilities are shared between you and AWS. This [shared responsibility
|
cid_cmd-4.3.0/cid/_version.py
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/trends/daily_anomaly_detection.json
RENAMED
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/trends/monthly_anomaly_detection.json
RENAMED
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/datasets/trends/monthly_bill_by_account.json
RENAMED
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/permissions/dashboard_permissions.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/permissions/data_set_rls_permissions.json
RENAMED
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/permissions/data_source_permissions.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/aws_service_category_map.sql
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/customer_all_unlimited.sql
RENAMED
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/shared/payer_account_name_map.sql
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/trends/daily_anomaly_detection.sql
RENAMED
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/trends/monthly_anomaly_detection.sql
RENAMED
|
File without changes
|
{cid_cmd-4.3.0 → cid_cmd-4.3.2}/cid/builtin/core/data/queries/trends/monthly_bill_by_account.sql
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|