# Global prefix that prefixes all metrics generated by this deployment. A _ separator is added automatically. metricPrefix: awssdk # Uncomment and edit the section below if you wish to deploy to an EKS Cluster. #deploymentConfig: # # Create / Determine your OIDC provider. See: https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html # oidcProvider: oidc.eks.[region].amazonaws.com/id/[identifier] # # The namespace that will be used for our metric gathering container. It will be created if it doesn't exist. # namespace: aws-sdk-prom-metrics # # Your AWS Account ID. Used while constructing the roles trust information. # awsAccountId: "012345678910" # # The URI to retrieve the container image you built with 'make docker' and pushed to. # imageUri: 012345678910.dkr.ecr.[region].amazonaws.com/aws-sdk-prom-metrics:label # # The Service Account Name that will be created in the EKS cluster. # serviceAccountName: aws-sdk-prom-metrics metrics: # How often (in minutes) to run our SDK command - frequency: 1 # The name of the metric in Prometheus. This will be prefixed by the 'metricPrefix' listed above. metricName: "eks_quotas" # The help message that accompanies the metric in Prometheus metricHelp: "EKS Service Quotas" # The name of the SDK Library to use. For available libraries see: https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/index.html sdkLibrary: "@aws-sdk/client-service-quotas" # The name of the client within the library above. ie: https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-service-quotas/index.html sdkClientName: "ServiceQuotasClient" # The command we want our sdk to run. ie: https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-service-quotas/classes/listservicequotascommand.html sdkCommand: "ListServiceQuotasCommand" # Since our quota value responses are numeric, we will create a gauge. Gauges are optional and when not present will create a 'Summary' instead. # The Action, and Resources section for permissions required for this command to work. These are optional and only used if 'deploymentConfig' is setup. iamPermissions: actions: - servicequotas:GetServiceQuota resources: # You can limit this scope to service quota code if known up front if desired - '*' gaugeValue: '$.Quotas[*].Value' # We can include labels using our JSON pointer syntax to extract labels of interest. labels: QuotaName: '$.Quotas[*].QuotaName' # The shape of the input for ListServiceQuotasCommand is shown here: https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-service-quotas/interfaces/listservicequotascommandinput.html # We're going to limit to the 'eks' service in our response, so we will pass that as our 'ServiceCode' sdkCommandInput: ServiceCode: "eks"