@@ -5,7 +5,6 @@ const request = require('../lib/request/index')
5
5
const crypto = require ( 'crypto' )
6
6
const cos = require ( '../lib/cos/cos' )
7
7
const _ = require ( 'lodash' )
8
- const sleep = require ( 'sleep' )
9
8
10
9
const DEFAULTS = {
11
10
signatureMethod : 'HmacSHA1' ,
@@ -466,7 +465,6 @@ class SlsMonitor {
466
465
}
467
466
468
467
async describeCCMInstanceDatas ( id , instances , startTime , endTime , i , limit ) {
469
-
470
468
const client = new TencentCloudClient ( this . credentials , {
471
469
host : 'monitor.tencentcloudapi.com' ,
472
470
path : '/'
@@ -486,14 +484,15 @@ class SlsMonitor {
486
484
if ( ! ( ( i + 1 ) % limit ) ) {
487
485
sleep = true
488
486
}
489
- return new Promise ( function ( resolve , rejecte ) {
487
+
488
+ return new Promise ( function ( resolve ) {
490
489
if ( ! sleep ) {
491
490
return resolve ( client . doCloudApiRequest ( req ) )
492
491
}
493
492
setTimeout ( function ( ) {
494
493
resolve ( client . doCloudApiRequest ( req ) )
495
494
} , timeCost )
496
- } ) ;
495
+ } )
497
496
}
498
497
499
498
async describeAttributes ( offset , limit ) {
@@ -524,18 +523,6 @@ class SlsMonitor {
524
523
/ ^ 5 x x $ / i
525
524
]
526
525
527
- const getMetricsResponse = ( promiseHandlers ) => {
528
- return new Promise ( ( resolve , reject ) => {
529
- Promise . all ( promiseHandlers )
530
- . then ( ( results ) => {
531
- resolve ( results )
532
- } )
533
- . catch ( ( error ) => {
534
- reject ( error )
535
- } )
536
- } )
537
- }
538
-
539
526
const filterAttributeName = function ( name , mRule ) {
540
527
const len = mRule . length
541
528
for ( var i = 0 ; i < len ; i ++ ) {
@@ -547,37 +534,39 @@ class SlsMonitor {
547
534
}
548
535
549
536
const metricAttributeHash = { }
550
- let requestHandlers = [ ]
551
- let responses = [ ]
552
- let results
553
- let firstRequestFlag = true
537
+ const responses = [ ]
554
538
const attributes = await this . describeAttributes ( 0 , 200 )
555
539
attributes . Response . Data . Data . push ( attributes . Response . Data . Data [ 10 ] )
556
540
557
541
let i = 0
558
542
const _this = this
559
543
function run ( ) {
560
- if ( attributes . Response . Data . Data . length > 0 ) {
544
+ if ( attributes . Response . Data . Data . length > 0 ) {
561
545
const metricAttribute = attributes . Response . Data . Data . shift ( )
562
546
metricAttributeHash [ metricAttribute . AttributeId ] = metricAttribute
563
-
564
- return _this . describeCCMInstanceDatas (
565
- metricAttribute . AttributeId ,
566
- announceInstance ,
567
- rangeTime . rangeStart ,
568
- rangeTime . rangeEnd ,
569
- i ++ , apiQPSLimit
570
- ) . then ( res => {
571
- responses . push ( res )
547
+ if ( ! filterAttributeName ( metricAttribute . AttributeName , metricsRule ) ) {
572
548
return run ( )
573
- } )
549
+ }
550
+ return _this
551
+ . describeCCMInstanceDatas (
552
+ metricAttribute . AttributeId ,
553
+ announceInstance ,
554
+ rangeTime . rangeStart ,
555
+ rangeTime . rangeEnd ,
556
+ i ++ ,
557
+ apiQPSLimit
558
+ )
559
+ . then ( ( res ) => {
560
+ responses . push ( res )
561
+ return run ( )
562
+ } )
574
563
}
575
564
}
576
565
577
566
const promiseList = Array ( Math . min ( apiQPSLimit , attributes . Response . Data . Data . length ) )
578
567
. fill ( Promise . resolve ( ) )
579
- . map ( promise => promise . then ( run ) )
580
-
568
+ . map ( ( promise ) => promise . then ( run ) )
569
+
581
570
return Promise . all ( promiseList ) . then ( ( ) => {
582
571
this . aggrCustomDatas ( responses , period , metricAttributeHash )
583
572
return responses
0 commit comments