Datasource for API Gateway Resources behind a stage
I have been using a custom datasource to collect the metrics for each resource and method (excluding OPTIONS) behind a API Gateway stage. It has been extremely useful in our production environments. I would share the datasource via the Exchange, but the discovery method I'm using will not be universal, so I think it would be best if that discovery were to work natively. If possible, could we please have a discovery method for AWS API Gateway Resources by Stage? *Something to note - This has the potential to discover quite a few resources and thus, create a substantial number of cloudwatch calls which might hit customer billing. For this reason, I added a custom property ##APIGW.stages## so that I could plug in the specific stages I wish to monitor instead of having each one automatically discovered. The Applies To looks like this: system.cloud.category == "AWS/APIGateway" && apigw.stages Autodiscovery is currently written in PowerShell (hence why not everyone can take advantage of it) $apigwID = '##system.aws.resourceid##'; $region = '##system.aws.region##' $stages = '##APIGW.Stages##'; $resources = Get-AGResourceList -RestApiId $apigwID -region $region $stages.split(' ') | %{ $stage = $_ $resources | %{ if($_.ResourceMethods) { $path = $_.Path $_.ResourceMethods.Keys | where{$_ -notmatch 'OPTIONS'} | %{ $wildvalue = "Stage=$stage>Resource=$Path>Method=$_" Write-Host "$wildvalue##${Stage}: $_ $Path######auto.stage=$stage" } } } }6Views0likes1CommentDimensionless Cloudwatch Metrics
I've been creating datasources to collect our custom AWS Cloudwatch metrics as per the docs:https://www.logicmonitor.com/support/monitoring/cloud/monitoring-custom-cloudwatch-metrics/- mainly this is fine... However it can't cope with dimensionless metrics: " Namespace>Dimensions>Metric>AggregationMethod , where Dimensions should be one or more key value pairs" I've tried creating datapoints without a dimension but it returns NAN (probably because LM requires "one or more key value pairs" for dimensions). We currently use a Python script to collect most our custom metrics but it's resource intensive for our collectors and I'm trying to move away from it. Does anyone know of a way to use the 'AWS CLOUDWATCH' collector with dimensionless metrics?12Views0likes5CommentsAWS Lambda Alias
GX2WXT A single Lambda function might have several versions. The default Lambda datasource monitors and alerts on the aggregate performance of each Lambda function. Using the Alias functionality in AWS, this datasource returns CloudWatch metrics specifically for the versions to which you have assigned aliases, allowing you to customize alert thresholds or compare performance across different versions of the same function. This datasource does not automatically discover aliases and begin monitoring them (as this could very quickly translate into several Aliases being monitored and drive up your CloudWatch API bill). Instead, add only the Aliases you want monitored by adding the device property "lambda.aliases" either to individual Lambda functions or at the group level if you're using the same Alias across several lambda functions. To add more than one, simply list them separated with a single space - e.g: "Prod QA01 QA02". If an alias does not exist, no data will be returned. This datasource is otherwise a clone of the existing AWS_Lambda datasource with the default alert thresholds.0Views2likes1CommentCustom CloudWatch Metrics without a host
We have some custom CloudWatch metrics we'd like to gather, display and alert on however, they aren't specific to any host or AWS resource. If we push application specific metrics into CloudWatch, we don't want them tied to any specific application host as hosts/instances can come-and-go. We push these metrics to CloudWatch without an associated EC2 / AWS resource and can see them in CloudWatch, but without an InstanceID, we can not pull these metrics into Logic Monitor. We'd like to be able to pull in and organize any metric from CloudWatch, regardless of whether or not its dimensions include an InstanceID etc.7Views1like3Comments