Skip to content
6 changes: 4 additions & 2 deletions collectors/aws/accessanalyzer/listFindings.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
AccessAnalyzer
} = require('@aws-sdk/client-accessanalyzer');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var accessanalyzer = new AWS.AccessAnalyzer(AWSConfig);
var accessanalyzer = new AccessAnalyzer(AWSConfig);
async.eachLimit(collection.accessanalyzer.listAnalyzers[AWSConfig.region].data, 15, function(analyzer, cb) {
collection.accessanalyzer.listFindings[AWSConfig.region][analyzer.arn] = {};
var params = {
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/apigateway/getClientCertificate.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
APIGateway
} = require('@aws-sdk/client-api-gateway');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var apigateway = new AWS.APIGateway(AWSConfig);
var apigateway = new APIGateway(AWSConfig);

async.eachLimit(collection.apigateway.getRestApis[AWSConfig.region].data, 5, function(api, cb){
if (!collection.apigateway.getStages ||
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/apigateway/getIntegration.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
APIGateway
} = require('@aws-sdk/client-api-gateway');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var apigateway = new AWS.APIGateway(AWSConfig);
var apigateway = new APIGateway(AWSConfig);

async.eachLimit(collection.apigateway.getRestApis[AWSConfig.region].data, 5, function(api, cb){
if (!collection.apigateway.getResources ||
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/appmesh/describeVirtualGateway.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
AppMesh
} = require('@aws-sdk/client-app-mesh');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var appmesh = new AWS.AppMesh(AWSConfig);
var appmesh = new AppMesh(AWSConfig);

if (!collection.appmesh ||
!collection.appmesh.listMeshes ||
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/autoscaling/describeLaunchConfigurations.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
AutoScaling
} = require('@aws-sdk/client-auto-scaling');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var autoscaling = new AWS.AutoScaling(AWSConfig);
var autoscaling = new AutoScaling(AWSConfig);

async.eachLimit(collection.autoscaling.describeAutoScalingGroups[AWSConfig.region].data, 15, function(asg, cb){
collection.autoscaling.describeLaunchConfigurations[AWSConfig.region][asg.AutoScalingGroupARN] = {};
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
AutoScaling
} = require('@aws-sdk/client-auto-scaling');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var autoscaling = new AWS.AutoScaling(AWSConfig);
var autoscaling = new AutoScaling(AWSConfig);

async.eachLimit(collection.autoscaling.describeAutoScalingGroups[AWSConfig.region].data, 15, function(asg, cb){
var params = {
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/cloudfront/getDistribution.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CloudFront
} = require('@aws-sdk/client-cloudfront');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var cloudfront = new AWS.CloudFront(AWSConfig);
var cloudfront = new CloudFront(AWSConfig);

async.eachLimit(collection.cloudfront.listDistributions[AWSConfig.region].data, 15, function(distribution, cb){
collection.cloudfront.getDistribution[AWSConfig.region][distribution.Id] = {};
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/cloudtrail/listTags.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CloudTrail
} = require('@aws-sdk/client-cloudtrail');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var cloudtrail = new AWS.CloudTrail(AWSConfig);
var cloudtrail = new CloudTrail(AWSConfig);

async.eachLimit(collection.cloudtrail.describeTrails[AWSConfig.region].data, 15, function(trail, cb) {
var params = {
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/cloudwatch/getEc2MetricStatistics.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CloudWatch
} = require('@aws-sdk/client-cloudwatch');
var async = require('async');
var helpers = require('../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var cloudwatch = new AWS.CloudWatch(AWSConfig);
var cloudwatch = new CloudWatch(AWSConfig);

async.eachLimit(collection.ec2.describeInstances[AWSConfig.region].data, 10, function(reservation, cb) {
reservation.Instances.forEach(instance => {
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/cloudwatch/getEcMetricStatistics.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CloudWatch
} = require('@aws-sdk/client-cloudwatch');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var cloudwatch = new AWS.CloudWatch(AWSConfig);
var cloudwatch = new CloudWatch(AWSConfig);

async.eachLimit(collection.elasticache.describeCacheClusters[AWSConfig.region].data, 10, function(cluster, cb){
collection.cloudwatch.getEcMetricStatistics[AWSConfig.region][cluster.CacheClusterId] = {};
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/cloudwatch/getEsMetricStatistics.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CloudWatch
} = require('@aws-sdk/client-cloudwatch');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var cloudwatch = new AWS.CloudWatch(AWSConfig);
var cloudwatch = new CloudWatch(AWSConfig);

async.eachLimit(collection.opensearch.listDomainNames[AWSConfig.region].data, 10, function(domain, cb){
collection.cloudwatch.getEsMetricStatistics[AWSConfig.region][domain.DomainName] = {};
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/cloudwatch/getRdsMetricStatistics.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CloudWatch
} = require('@aws-sdk/client-cloudwatch');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var cloudwatch = new AWS.CloudWatch(AWSConfig);
var cloudwatch = new CloudWatch(AWSConfig);

async.eachLimit(collection.rds.describeDBInstances[AWSConfig.region].data, 10, function(instance, cb){
collection.cloudwatch.getRdsMetricStatistics[AWSConfig.region][instance.DBInstanceIdentifier] = {};
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/cloudwatch/getRdsReadIOPSMetricStatistics.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CloudWatch
} = require('@aws-sdk/client-cloudwatch');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var cloudwatch = new AWS.CloudWatch(AWSConfig);
var cloudwatch = new CloudWatch(AWSConfig);

async.eachLimit(collection.rds.describeDBInstances[AWSConfig.region].data, 10, function(instance, cb){
collection.cloudwatch.getRdsReadIOPSMetricStatistics[AWSConfig.region][instance.DBInstanceIdentifier] = {};
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/cloudwatch/getRdsWriteIOPSMetricStatistics.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CloudWatch
} = require('@aws-sdk/client-cloudwatch');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var cloudwatch = new AWS.CloudWatch(AWSConfig);
var cloudwatch = new CloudWatch(AWSConfig);

async.eachLimit(collection.rds.describeDBInstances[AWSConfig.region].data, 10, function(instance, cb){
collection.cloudwatch.getRdsWriteIOPSMetricStatistics[AWSConfig.region][instance.DBInstanceIdentifier] = {};
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/cloudwatch/getredshiftMetricStatistics.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CloudWatch
} = require('@aws-sdk/client-cloudwatch');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var cloudwatch = new AWS.CloudWatch(AWSConfig);
var cloudwatch = new CloudWatch(AWSConfig);

async.eachLimit(collection.redshift.describeClusters[AWSConfig.region].data, 10, function(cluster, cb){
collection.cloudwatch.getredshiftMetricStatistics[AWSConfig.region][cluster.ClusterIdentifier] = {};
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/codebuild/batchGetProjects.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
CodeBuild
} = require('@aws-sdk/client-codebuild');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var codebuild = new AWS.CodeBuild(AWSConfig);
var codebuild = new CodeBuild(AWSConfig);

async.eachLimit(collection.codebuild.listProjects[AWSConfig.region].data, 15, function(project, cb){
collection.codebuild.batchGetProjects[AWSConfig.region][project] = {};
Expand Down
28 changes: 19 additions & 9 deletions collectors/aws/collector.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,19 @@
- callback: Function to call when the collection is complete
*********************/

var AWS = require('aws-sdk');

const {
EC2
} = require('@aws-sdk/client-ec2');

var async = require('async');
var https = require('https');
var helpers = require(__dirname + '/../../helpers/aws');
var collectors = require(__dirname + '/../../collectors/aws');
var collectData = require(__dirname + '/../../helpers/shared.js');
// Override max sockets
var agent = new https.Agent({maxSockets: 100});
AWS.config.update({httpOptions: {agent: agent}});

const { Agent } = require('https');
const { Agent: HttpAgent } = require("http");
const { NodeHttpHandler } = require('@aws-sdk/node-http-handler');

var rateError = {message: 'rate', statusCode: 429};

Expand All @@ -50,7 +54,12 @@ var collect = function(AWSConfig, settings, callback) {
var AWSXRay;
var debugMode = settings.debug_mode;
if (debugMode) AWSXRay = require('aws-xray-sdk');

// Override max sockets
const customRequestHandler = new NodeHttpHandler({
httpsAgent: new Agent({maxSockets: 100}),
httpAgent: new HttpAgent({maxSockets: 100})
});
AWSConfig.requestHandler = customRequestHandler;
AWSConfig.maxRetries = 8;
AWSConfig.retryDelayOptions = {base: 100};

Expand All @@ -63,7 +72,8 @@ var collect = function(AWSConfig, settings, callback) {

let runApiCalls = [];

var AWSEC2 = new AWS.EC2(AWSConfig);
var AWSEC2 = new EC2(AWSConfig);

var params = {AllRegions: true};
var excludeRegions = [];

Expand Down Expand Up @@ -136,7 +146,7 @@ var collect = function(AWSConfig, settings, callback) {
}
});
} else {
var executor = debugMode ? (AWSXRay.captureAWSClient(new AWS[serviceName](LocalAWSConfig))) : new AWS[serviceName](LocalAWSConfig);
var executor = debugMode ? (AWSXRay.captureAWSClient(new AWSXRay[serviceName](LocalAWSConfig))) : new AWSXRay[serviceName](LocalAWSConfig);
var paginating = false;
var executorCb = function(err, data) {
if (err) {
Expand Down Expand Up @@ -305,7 +315,7 @@ var collect = function(AWSConfig, settings, callback) {
}
});
} else {
var executor = debugMode ? (AWSXRay.captureAWSClient(new AWS[serviceName](LocalAWSConfig))) : new AWS[serviceName](LocalAWSConfig);
var executor = debugMode ? (AWSXRay.captureAWSClient(new AWSXRay[serviceName](LocalAWSConfig))) : new AWSXRay[serviceName](LocalAWSConfig);

if (!collection[callObj.reliesOnService][callObj.reliesOnCall][LocalAWSConfig.region] ||
!collection[callObj.reliesOnService][callObj.reliesOnCall][LocalAWSConfig.region].data) {
Expand Down
26 changes: 17 additions & 9 deletions collectors/aws/collector_multipart.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,19 @@
- callback: Function to call when the collection is complete
*********************/

var AWS = require('aws-sdk');

const {
EC2
} = require('@aws-sdk/client-ec2');

var async = require('async');
var https = require('https');
var helpers = require(__dirname + '/../../helpers/aws');
var collectors = require(__dirname + '/../../collectors/aws');
var collectData = require(__dirname + '/../../helpers/shared.js');

// Override max sockets
var agent = new https.Agent({maxSockets: 100});
AWS.config.update({httpOptions: {agent: agent}});
const { Agent } = require('https');
const { Agent: HttpAgent } = require("http");
const { NodeHttpHandler } = require('@aws-sdk/node-http-handler');

var CALLS_CONFIG = {
TOTAL_PARTS: 14,
Expand Down Expand Up @@ -61,7 +64,12 @@ var collect = function(AWSConfig, settings, callback) {
var AWSXRay;
var debugMode = settings.debug_mode;
if (debugMode) AWSXRay = require('aws-xray-sdk');

// Override max sockets
const customRequestHandler = new NodeHttpHandler({
httpsAgent: new Agent({maxSockets: 100}),
httpAgent: new HttpAgent({maxSockets: 100})
});
AWSConfig.requestHandler = customRequestHandler;
AWSConfig.maxRetries = 8;
AWSConfig.retryDelayOptions = {base: 100};

Expand All @@ -80,7 +88,7 @@ var collect = function(AWSConfig, settings, callback) {

let runApiCalls = [];

var AWSEC2 = new AWS.EC2(AWSConfig);
var AWSEC2 = new EC2(AWSConfig);
var params = {AllRegions: true};
var excludeRegions = [];
var timeoutCheck;
Expand Down Expand Up @@ -165,7 +173,7 @@ var collect = function(AWSConfig, settings, callback) {
}
});
} else {
var executor = debugMode ? (AWSXRay.captureAWSClient(new AWS[serviceName](LocalAWSConfig))) : new AWS[serviceName](LocalAWSConfig);
var executor = debugMode ? (AWSXRay.captureAWSClient(new AWSXRay[serviceName](LocalAWSConfig))) : new AWSXRay[serviceName](LocalAWSConfig);
var paginating = false;
var executorCb = function(err, data) {
if (err) {
Expand Down Expand Up @@ -345,7 +353,7 @@ var collect = function(AWSConfig, settings, callback) {
}
});
} else {
var executor = debugMode ? (AWSXRay.captureAWSClient(new AWS[serviceName](LocalAWSConfig))) : new AWS[serviceName](LocalAWSConfig);
var executor = debugMode ? (AWSXRay.captureAWSClient(new AWSXRay[serviceName](LocalAWSConfig))) : new AWSXRay[serviceName](LocalAWSConfig);

if (!collection[callObj.reliesOnService][callObj.reliesOnCall][LocalAWSConfig.region] ||
!collection[callObj.reliesOnService][callObj.reliesOnCall][LocalAWSConfig.region].data) {
Expand Down
6 changes: 4 additions & 2 deletions collectors/aws/connect/instanceAttachmentStorageConfigs.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
Connect
} = require('@aws-sdk/client-connect');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var connect = new AWS.Connect(AWSConfig);
var connect = new Connect(AWSConfig);

async.eachLimit(collection.connect.listInstances[AWSConfig.region].data, 15, function(instance, cb){
collection.connect.instanceAttachmentStorageConfigs[AWSConfig.region][instance.Id] = {};
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
Connect
} = require('@aws-sdk/client-connect');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var connect = new AWS.Connect(AWSConfig);
var connect = new Connect(AWSConfig);

async.eachLimit(collection.connect.listInstances[AWSConfig.region].data, 15, function(instance, cb){
collection.connect.listInstanceCallRecordingStorageConfigs[AWSConfig.region][instance.Id] = {};
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
var AWS = require('aws-sdk');
const {
Connect
} = require('@aws-sdk/client-connect');
var async = require('async');
var helpers = require(__dirname + '/../../../helpers/aws');

module.exports = function(AWSConfig, collection, retries, callback) {
var connect = new AWS.Connect(AWSConfig);
var connect = new Connect(AWSConfig);

async.eachLimit(collection.connect.listInstances[AWSConfig.region].data, 15, function(instance, cb){
collection.connect.listInstanceChatTranscriptStorageConfigs[AWSConfig.region][instance.Id] = {};
Expand Down
Loading