@aws-sdk/client-internetmonitor 3.301.0 → 3.304.0

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.
package/README.md CHANGED
@@ -9,17 +9,22 @@
9
9
 
10
10
  AWS SDK for JavaScript InternetMonitor Client for Node.js, Browser and React Native.
11
11
 
12
- <p>Amazon CloudWatch Internet Monitor provides visibility into how internet issues impact the performance and availability between your applications hosted on Amazon Web Services and your end
13
- users, reducing the time it takes for you to diagnose these issues, from days to minutes. You can explore internet measurements for different time frames
14
- and at different geographic granularities, and quickly visualize the impact of issues, and then take action to improve your end users' experience, for
15
- example, by switching to other Amazon Web Services services or rerouting traffic to your workload through differentAmazon Web Services Regions.</p>
16
- <p> If the issue is caused by the Amazon Web Services network, you'll automatically receive an Amazon Web Services Health Dashboard notification with the steps that Amazon Web Services is taking
17
- to mitigate the problem. To support integrating health information for geographies and networks specific to your application, Internet Monitor delivers measurements
18
- to CloudWatch Logs and CloudWatch Metrics. Internet Monitor also sends health events to Amazon EventBridge, so you can set up notifications. Internet Monitor monitors internet connectivity
19
- for your application through Amazon Virtual Private Clouds (VPCs), Amazon CloudFront distributions, and Amazon WorkSpaces directories.</p>
20
- <p>To use Internet Monitor, you create a <i>monitor</i> and add resources to it, Virtual Private Clouds (VPCs), Amazon CloudFront distributions, or WorkSpaces
21
- directories that show where your application's internet traffic is. Internet Monitor then provides internet measurements from Amazon Web Services that are specific to the locations
22
- and networks that communicate with your application. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html"> Using Amazon CloudWatch Internet Monitor</a> in the Amazon CloudWatch User Guide.</p>
12
+ <p>Amazon CloudWatch Internet Monitor provides visibility into how internet issues impact the performance and availability
13
+ between your applications hosted on Amazon Web Services and your end users. It reduces the time it takes for you to diagnose
14
+ internet issues from days to minutes. Internet Monitor uses the connectivity data that Amazon Web Services captures from its global
15
+ networking footprint to calculate a baseline of performance and availability for internet traffic. This
16
+ is the same data that Amazon Web Services uses to monitor internet uptime and availability. With those measurements
17
+ as a baseline, Internet Monitor raises awareness for you when there are significant problems for your
18
+ end users in the different geographic locations where your application runs.</p>
19
+ <p>Internet Monitor publishes internet measurements to CloudWatch Logs and CloudWatch Metrics,
20
+ to easily support using CloudWatch tools with health information for geographies and networks specific to your application.
21
+ Internet Monitor sends health events to Amazon EventBridge so that you can set up notifications. If an issue is caused by the Amazon Web Services network,
22
+ you also automatically receive an Amazon Web Services Health Dashboard notification with the steps that Amazon Web Services is taking to mitigate the problem.</p>
23
+ <p>To use Internet Monitor, you create a <i>monitor</i> and associate your application's resources
24
+ with it, VPCs, CloudFront distributions, or WorkSpaces directories, to enable Internet Monitor to know
25
+ where your application's internet traffic is. Internet Monitor then provides internet measurements from Amazon Web Services that are specific to
26
+ the locations and networks that communicate with your application.</p>
27
+ <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html">Using Amazon CloudWatch Internet Monitor</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
23
28
 
24
29
  ## Installing
25
30
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ResourceNotFoundException = exports.TooManyRequestsException = exports.NotFoundException = exports.InternalServerErrorException = exports.MonitorProcessingStatusCode = exports.HealthEventImpactType = exports.HealthEventStatus = exports.TriangulationEventType = exports.ValidationException = exports.ThrottlingException = exports.LimitExceededException = exports.InternalServerException = exports.MonitorConfigState = exports.ConflictException = exports.BadRequestException = exports.AccessDeniedException = void 0;
3
+ exports.ResourceNotFoundException = exports.TooManyRequestsException = exports.NotFoundException = exports.InternalServerErrorException = exports.MonitorProcessingStatusCode = exports.HealthEventImpactType = exports.HealthEventStatus = exports.TriangulationEventType = exports.ValidationException = exports.ThrottlingException = exports.LimitExceededException = exports.InternalServerException = exports.MonitorConfigState = exports.LogDeliveryStatus = exports.ConflictException = exports.BadRequestException = exports.AccessDeniedException = void 0;
4
4
  const InternetMonitorServiceException_1 = require("./InternetMonitorServiceException");
5
5
  class AccessDeniedException extends InternetMonitorServiceException_1.InternetMonitorServiceException {
6
6
  constructor(opts) {
@@ -41,13 +41,16 @@ class ConflictException extends InternetMonitorServiceException_1.InternetMonito
41
41
  }
42
42
  }
43
43
  exports.ConflictException = ConflictException;
44
- var MonitorConfigState;
45
- (function (MonitorConfigState) {
46
- MonitorConfigState["ACTIVE"] = "ACTIVE";
47
- MonitorConfigState["ERROR"] = "ERROR";
48
- MonitorConfigState["INACTIVE"] = "INACTIVE";
49
- MonitorConfigState["PENDING"] = "PENDING";
50
- })(MonitorConfigState = exports.MonitorConfigState || (exports.MonitorConfigState = {}));
44
+ exports.LogDeliveryStatus = {
45
+ DISABLED: "DISABLED",
46
+ ENABLED: "ENABLED",
47
+ };
48
+ exports.MonitorConfigState = {
49
+ ACTIVE: "ACTIVE",
50
+ ERROR: "ERROR",
51
+ INACTIVE: "INACTIVE",
52
+ PENDING: "PENDING",
53
+ };
51
54
  class InternalServerException extends InternetMonitorServiceException_1.InternetMonitorServiceException {
52
55
  constructor(opts) {
53
56
  super({
@@ -104,30 +107,26 @@ class ValidationException extends InternetMonitorServiceException_1.InternetMoni
104
107
  }
105
108
  }
106
109
  exports.ValidationException = ValidationException;
107
- var TriangulationEventType;
108
- (function (TriangulationEventType) {
109
- TriangulationEventType["AWS"] = "AWS";
110
- TriangulationEventType["INTERNET"] = "Internet";
111
- })(TriangulationEventType = exports.TriangulationEventType || (exports.TriangulationEventType = {}));
112
- var HealthEventStatus;
113
- (function (HealthEventStatus) {
114
- HealthEventStatus["ACTIVE"] = "ACTIVE";
115
- HealthEventStatus["RESOLVED"] = "RESOLVED";
116
- })(HealthEventStatus = exports.HealthEventStatus || (exports.HealthEventStatus = {}));
117
- var HealthEventImpactType;
118
- (function (HealthEventImpactType) {
119
- HealthEventImpactType["AVAILABILITY"] = "AVAILABILITY";
120
- HealthEventImpactType["PERFORMANCE"] = "PERFORMANCE";
121
- })(HealthEventImpactType = exports.HealthEventImpactType || (exports.HealthEventImpactType = {}));
122
- var MonitorProcessingStatusCode;
123
- (function (MonitorProcessingStatusCode) {
124
- MonitorProcessingStatusCode["COLLECTING_DATA"] = "COLLECTING_DATA";
125
- MonitorProcessingStatusCode["FAULT_ACCESS_CLOUDWATCH"] = "FAULT_ACCESS_CLOUDWATCH";
126
- MonitorProcessingStatusCode["FAULT_SERVICE"] = "FAULT_SERVICE";
127
- MonitorProcessingStatusCode["INACTIVE"] = "INACTIVE";
128
- MonitorProcessingStatusCode["INSUFFICIENT_DATA"] = "INSUFFICIENT_DATA";
129
- MonitorProcessingStatusCode["OK"] = "OK";
130
- })(MonitorProcessingStatusCode = exports.MonitorProcessingStatusCode || (exports.MonitorProcessingStatusCode = {}));
110
+ exports.TriangulationEventType = {
111
+ AWS: "AWS",
112
+ INTERNET: "Internet",
113
+ };
114
+ exports.HealthEventStatus = {
115
+ ACTIVE: "ACTIVE",
116
+ RESOLVED: "RESOLVED",
117
+ };
118
+ exports.HealthEventImpactType = {
119
+ AVAILABILITY: "AVAILABILITY",
120
+ PERFORMANCE: "PERFORMANCE",
121
+ };
122
+ exports.MonitorProcessingStatusCode = {
123
+ COLLECTING_DATA: "COLLECTING_DATA",
124
+ FAULT_ACCESS_CLOUDWATCH: "FAULT_ACCESS_CLOUDWATCH",
125
+ FAULT_SERVICE: "FAULT_SERVICE",
126
+ INACTIVE: "INACTIVE",
127
+ INSUFFICIENT_DATA: "INSUFFICIENT_DATA",
128
+ OK: "OK",
129
+ };
131
130
  class InternalServerErrorException extends InternetMonitorServiceException_1.InternetMonitorServiceException {
132
131
  constructor(opts) {
133
132
  super({
@@ -15,6 +15,9 @@ const serializeAws_restJson1CreateMonitorCommand = async (input, context) => {
15
15
  let body;
16
16
  body = JSON.stringify({
17
17
  ClientToken: input.ClientToken ?? (0, uuid_1.v4)(),
18
+ ...(input.InternetMeasurementsLogDelivery != null && {
19
+ InternetMeasurementsLogDelivery: serializeAws_restJson1InternetMeasurementsLogDelivery(input.InternetMeasurementsLogDelivery, context),
20
+ }),
18
21
  ...(input.MaxCityNetworksToMonitor != null && { MaxCityNetworksToMonitor: input.MaxCityNetworksToMonitor }),
19
22
  ...(input.MonitorName != null && { MonitorName: input.MonitorName }),
20
23
  ...(input.Resources != null && { Resources: serializeAws_restJson1SetOfARNs(input.Resources, context) }),
@@ -208,6 +211,9 @@ const serializeAws_restJson1UpdateMonitorCommand = async (input, context) => {
208
211
  let body;
209
212
  body = JSON.stringify({
210
213
  ClientToken: input.ClientToken ?? (0, uuid_1.v4)(),
214
+ ...(input.InternetMeasurementsLogDelivery != null && {
215
+ InternetMeasurementsLogDelivery: serializeAws_restJson1InternetMeasurementsLogDelivery(input.InternetMeasurementsLogDelivery, context),
216
+ }),
211
217
  ...(input.MaxCityNetworksToMonitor != null && { MaxCityNetworksToMonitor: input.MaxCityNetworksToMonitor }),
212
218
  ...(input.ResourcesToAdd != null && {
213
219
  ResourcesToAdd: serializeAws_restJson1SetOfARNs(input.ResourcesToAdd, context),
@@ -401,6 +407,9 @@ const deserializeAws_restJson1GetMonitorCommand = async (output, context) => {
401
407
  if (data.CreatedAt != null) {
402
408
  contents.CreatedAt = (0, smithy_client_1.expectNonNull)((0, smithy_client_1.parseRfc3339DateTimeWithOffset)(data.CreatedAt));
403
409
  }
410
+ if (data.InternetMeasurementsLogDelivery != null) {
411
+ contents.InternetMeasurementsLogDelivery = deserializeAws_restJson1InternetMeasurementsLogDelivery(data.InternetMeasurementsLogDelivery, context);
412
+ }
404
413
  if (data.MaxCityNetworksToMonitor != null) {
405
414
  contents.MaxCityNetworksToMonitor = (0, smithy_client_1.expectInt32)(data.MaxCityNetworksToMonitor);
406
415
  }
@@ -869,6 +878,18 @@ const deserializeAws_restJson1ValidationExceptionResponse = async (parsedOutput,
869
878
  });
870
879
  return (0, smithy_client_1.decorateServiceException)(exception, parsedOutput.body);
871
880
  };
881
+ const serializeAws_restJson1InternetMeasurementsLogDelivery = (input, context) => {
882
+ return {
883
+ ...(input.S3Config != null && { S3Config: serializeAws_restJson1S3Config(input.S3Config, context) }),
884
+ };
885
+ };
886
+ const serializeAws_restJson1S3Config = (input, context) => {
887
+ return {
888
+ ...(input.BucketName != null && { BucketName: input.BucketName }),
889
+ ...(input.BucketPrefix != null && { BucketPrefix: input.BucketPrefix }),
890
+ ...(input.LogDeliveryStatus != null && { LogDeliveryStatus: input.LogDeliveryStatus }),
891
+ };
892
+ };
872
893
  const serializeAws_restJson1SetOfARNs = (input, context) => {
873
894
  return input
874
895
  .filter((e) => e != null)
@@ -962,6 +983,11 @@ const deserializeAws_restJson1InternetHealth = (output, context) => {
962
983
  : undefined,
963
984
  };
964
985
  };
986
+ const deserializeAws_restJson1InternetMeasurementsLogDelivery = (output, context) => {
987
+ return {
988
+ S3Config: output.S3Config != null ? deserializeAws_restJson1S3Config(output.S3Config, context) : undefined,
989
+ };
990
+ };
965
991
  const deserializeAws_restJson1Monitor = (output, context) => {
966
992
  return {
967
993
  MonitorArn: (0, smithy_client_1.expectString)(output.MonitorArn),
@@ -1020,6 +1046,13 @@ const deserializeAws_restJson1RoundTripTime = (output, context) => {
1020
1046
  P95: (0, smithy_client_1.limitedParseDouble)(output.P95),
1021
1047
  };
1022
1048
  };
1049
+ const deserializeAws_restJson1S3Config = (output, context) => {
1050
+ return {
1051
+ BucketName: (0, smithy_client_1.expectString)(output.BucketName),
1052
+ BucketPrefix: (0, smithy_client_1.expectString)(output.BucketPrefix),
1053
+ LogDeliveryStatus: (0, smithy_client_1.expectString)(output.LogDeliveryStatus),
1054
+ };
1055
+ };
1023
1056
  const deserializeAws_restJson1SetOfARNs = (output, context) => {
1024
1057
  const retVal = (output || [])
1025
1058
  .filter((e) => e != null)
@@ -35,13 +35,16 @@ export class ConflictException extends __BaseException {
35
35
  Object.setPrototypeOf(this, ConflictException.prototype);
36
36
  }
37
37
  }
38
- export var MonitorConfigState;
39
- (function (MonitorConfigState) {
40
- MonitorConfigState["ACTIVE"] = "ACTIVE";
41
- MonitorConfigState["ERROR"] = "ERROR";
42
- MonitorConfigState["INACTIVE"] = "INACTIVE";
43
- MonitorConfigState["PENDING"] = "PENDING";
44
- })(MonitorConfigState || (MonitorConfigState = {}));
38
+ export const LogDeliveryStatus = {
39
+ DISABLED: "DISABLED",
40
+ ENABLED: "ENABLED",
41
+ };
42
+ export const MonitorConfigState = {
43
+ ACTIVE: "ACTIVE",
44
+ ERROR: "ERROR",
45
+ INACTIVE: "INACTIVE",
46
+ PENDING: "PENDING",
47
+ };
45
48
  export class InternalServerException extends __BaseException {
46
49
  constructor(opts) {
47
50
  super({
@@ -94,30 +97,26 @@ export class ValidationException extends __BaseException {
94
97
  Object.setPrototypeOf(this, ValidationException.prototype);
95
98
  }
96
99
  }
97
- export var TriangulationEventType;
98
- (function (TriangulationEventType) {
99
- TriangulationEventType["AWS"] = "AWS";
100
- TriangulationEventType["INTERNET"] = "Internet";
101
- })(TriangulationEventType || (TriangulationEventType = {}));
102
- export var HealthEventStatus;
103
- (function (HealthEventStatus) {
104
- HealthEventStatus["ACTIVE"] = "ACTIVE";
105
- HealthEventStatus["RESOLVED"] = "RESOLVED";
106
- })(HealthEventStatus || (HealthEventStatus = {}));
107
- export var HealthEventImpactType;
108
- (function (HealthEventImpactType) {
109
- HealthEventImpactType["AVAILABILITY"] = "AVAILABILITY";
110
- HealthEventImpactType["PERFORMANCE"] = "PERFORMANCE";
111
- })(HealthEventImpactType || (HealthEventImpactType = {}));
112
- export var MonitorProcessingStatusCode;
113
- (function (MonitorProcessingStatusCode) {
114
- MonitorProcessingStatusCode["COLLECTING_DATA"] = "COLLECTING_DATA";
115
- MonitorProcessingStatusCode["FAULT_ACCESS_CLOUDWATCH"] = "FAULT_ACCESS_CLOUDWATCH";
116
- MonitorProcessingStatusCode["FAULT_SERVICE"] = "FAULT_SERVICE";
117
- MonitorProcessingStatusCode["INACTIVE"] = "INACTIVE";
118
- MonitorProcessingStatusCode["INSUFFICIENT_DATA"] = "INSUFFICIENT_DATA";
119
- MonitorProcessingStatusCode["OK"] = "OK";
120
- })(MonitorProcessingStatusCode || (MonitorProcessingStatusCode = {}));
100
+ export const TriangulationEventType = {
101
+ AWS: "AWS",
102
+ INTERNET: "Internet",
103
+ };
104
+ export const HealthEventStatus = {
105
+ ACTIVE: "ACTIVE",
106
+ RESOLVED: "RESOLVED",
107
+ };
108
+ export const HealthEventImpactType = {
109
+ AVAILABILITY: "AVAILABILITY",
110
+ PERFORMANCE: "PERFORMANCE",
111
+ };
112
+ export const MonitorProcessingStatusCode = {
113
+ COLLECTING_DATA: "COLLECTING_DATA",
114
+ FAULT_ACCESS_CLOUDWATCH: "FAULT_ACCESS_CLOUDWATCH",
115
+ FAULT_SERVICE: "FAULT_SERVICE",
116
+ INACTIVE: "INACTIVE",
117
+ INSUFFICIENT_DATA: "INSUFFICIENT_DATA",
118
+ OK: "OK",
119
+ };
121
120
  export class InternalServerErrorException extends __BaseException {
122
121
  constructor(opts) {
123
122
  super({
@@ -12,6 +12,9 @@ export const serializeAws_restJson1CreateMonitorCommand = async (input, context)
12
12
  let body;
13
13
  body = JSON.stringify({
14
14
  ClientToken: input.ClientToken ?? generateIdempotencyToken(),
15
+ ...(input.InternetMeasurementsLogDelivery != null && {
16
+ InternetMeasurementsLogDelivery: serializeAws_restJson1InternetMeasurementsLogDelivery(input.InternetMeasurementsLogDelivery, context),
17
+ }),
15
18
  ...(input.MaxCityNetworksToMonitor != null && { MaxCityNetworksToMonitor: input.MaxCityNetworksToMonitor }),
16
19
  ...(input.MonitorName != null && { MonitorName: input.MonitorName }),
17
20
  ...(input.Resources != null && { Resources: serializeAws_restJson1SetOfARNs(input.Resources, context) }),
@@ -196,6 +199,9 @@ export const serializeAws_restJson1UpdateMonitorCommand = async (input, context)
196
199
  let body;
197
200
  body = JSON.stringify({
198
201
  ClientToken: input.ClientToken ?? generateIdempotencyToken(),
202
+ ...(input.InternetMeasurementsLogDelivery != null && {
203
+ InternetMeasurementsLogDelivery: serializeAws_restJson1InternetMeasurementsLogDelivery(input.InternetMeasurementsLogDelivery, context),
204
+ }),
199
205
  ...(input.MaxCityNetworksToMonitor != null && { MaxCityNetworksToMonitor: input.MaxCityNetworksToMonitor }),
200
206
  ...(input.ResourcesToAdd != null && {
201
207
  ResourcesToAdd: serializeAws_restJson1SetOfARNs(input.ResourcesToAdd, context),
@@ -385,6 +391,9 @@ export const deserializeAws_restJson1GetMonitorCommand = async (output, context)
385
391
  if (data.CreatedAt != null) {
386
392
  contents.CreatedAt = __expectNonNull(__parseRfc3339DateTimeWithOffset(data.CreatedAt));
387
393
  }
394
+ if (data.InternetMeasurementsLogDelivery != null) {
395
+ contents.InternetMeasurementsLogDelivery = deserializeAws_restJson1InternetMeasurementsLogDelivery(data.InternetMeasurementsLogDelivery, context);
396
+ }
388
397
  if (data.MaxCityNetworksToMonitor != null) {
389
398
  contents.MaxCityNetworksToMonitor = __expectInt32(data.MaxCityNetworksToMonitor);
390
399
  }
@@ -846,6 +855,18 @@ const deserializeAws_restJson1ValidationExceptionResponse = async (parsedOutput,
846
855
  });
847
856
  return __decorateServiceException(exception, parsedOutput.body);
848
857
  };
858
+ const serializeAws_restJson1InternetMeasurementsLogDelivery = (input, context) => {
859
+ return {
860
+ ...(input.S3Config != null && { S3Config: serializeAws_restJson1S3Config(input.S3Config, context) }),
861
+ };
862
+ };
863
+ const serializeAws_restJson1S3Config = (input, context) => {
864
+ return {
865
+ ...(input.BucketName != null && { BucketName: input.BucketName }),
866
+ ...(input.BucketPrefix != null && { BucketPrefix: input.BucketPrefix }),
867
+ ...(input.LogDeliveryStatus != null && { LogDeliveryStatus: input.LogDeliveryStatus }),
868
+ };
869
+ };
849
870
  const serializeAws_restJson1SetOfARNs = (input, context) => {
850
871
  return input
851
872
  .filter((e) => e != null)
@@ -939,6 +960,11 @@ const deserializeAws_restJson1InternetHealth = (output, context) => {
939
960
  : undefined,
940
961
  };
941
962
  };
963
+ const deserializeAws_restJson1InternetMeasurementsLogDelivery = (output, context) => {
964
+ return {
965
+ S3Config: output.S3Config != null ? deserializeAws_restJson1S3Config(output.S3Config, context) : undefined,
966
+ };
967
+ };
942
968
  const deserializeAws_restJson1Monitor = (output, context) => {
943
969
  return {
944
970
  MonitorArn: __expectString(output.MonitorArn),
@@ -997,6 +1023,13 @@ const deserializeAws_restJson1RoundTripTime = (output, context) => {
997
1023
  P95: __limitedParseDouble(output.P95),
998
1024
  };
999
1025
  };
1026
+ const deserializeAws_restJson1S3Config = (output, context) => {
1027
+ return {
1028
+ BucketName: __expectString(output.BucketName),
1029
+ BucketPrefix: __expectString(output.BucketPrefix),
1030
+ LogDeliveryStatus: __expectString(output.LogDeliveryStatus),
1031
+ };
1032
+ };
1000
1033
  const deserializeAws_restJson1SetOfARNs = (output, context) => {
1001
1034
  const retVal = (output || [])
1002
1035
  .filter((e) => e != null)
@@ -12,25 +12,33 @@ import { UpdateMonitorCommandInput, UpdateMonitorCommandOutput } from "./command
12
12
  import { InternetMonitorClient } from "./InternetMonitorClient";
13
13
  /**
14
14
  * @public
15
- * <p>Amazon CloudWatch Internet Monitor provides visibility into how internet issues impact the performance and availability between your applications hosted on Amazon Web Services and your end
16
- * users, reducing the time it takes for you to diagnose these issues, from days to minutes. You can explore internet measurements for different time frames
17
- * and at different geographic granularities, and quickly visualize the impact of issues, and then take action to improve your end users' experience, for
18
- * example, by switching to other Amazon Web Services services or rerouting traffic to your workload through differentAmazon Web Services Regions.</p>
19
- * <p> If the issue is caused by the Amazon Web Services network, you'll automatically receive an Amazon Web Services Health Dashboard notification with the steps that Amazon Web Services is taking
20
- * to mitigate the problem. To support integrating health information for geographies and networks specific to your application, Internet Monitor delivers measurements
21
- * to CloudWatch Logs and CloudWatch Metrics. Internet Monitor also sends health events to Amazon EventBridge, so you can set up notifications. Internet Monitor monitors internet connectivity
22
- * for your application through Amazon Virtual Private Clouds (VPCs), Amazon CloudFront distributions, and Amazon WorkSpaces directories.</p>
23
- * <p>To use Internet Monitor, you create a <i>monitor</i> and add resources to it, Virtual Private Clouds (VPCs), Amazon CloudFront distributions, or WorkSpaces
24
- * directories that show where your application's internet traffic is. Internet Monitor then provides internet measurements from Amazon Web Services that are specific to the locations
25
- * and networks that communicate with your application. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html"> Using Amazon CloudWatch Internet Monitor</a> in the Amazon CloudWatch User Guide.</p>
15
+ * <p>Amazon CloudWatch Internet Monitor provides visibility into how internet issues impact the performance and availability
16
+ * between your applications hosted on Amazon Web Services and your end users. It reduces the time it takes for you to diagnose
17
+ * internet issues from days to minutes. Internet Monitor uses the connectivity data that Amazon Web Services captures from its global
18
+ * networking footprint to calculate a baseline of performance and availability for internet traffic. This
19
+ * is the same data that Amazon Web Services uses to monitor internet uptime and availability. With those measurements
20
+ * as a baseline, Internet Monitor raises awareness for you when there are significant problems for your
21
+ * end users in the different geographic locations where your application runs.</p>
22
+ * <p>Internet Monitor publishes internet measurements to CloudWatch Logs and CloudWatch Metrics,
23
+ * to easily support using CloudWatch tools with health information for geographies and networks specific to your application.
24
+ * Internet Monitor sends health events to Amazon EventBridge so that you can set up notifications. If an issue is caused by the Amazon Web Services network,
25
+ * you also automatically receive an Amazon Web Services Health Dashboard notification with the steps that Amazon Web Services is taking to mitigate the problem.</p>
26
+ * <p>To use Internet Monitor, you create a <i>monitor</i> and associate your application's resources
27
+ * with it, VPCs, CloudFront distributions, or WorkSpaces directories, to enable Internet Monitor to know
28
+ * where your application's internet traffic is. Internet Monitor then provides internet measurements from Amazon Web Services that are specific to
29
+ * the locations and networks that communicate with your application.</p>
30
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html">Using Amazon CloudWatch Internet Monitor</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
26
31
  */
27
32
  export declare class InternetMonitor extends InternetMonitorClient {
28
33
  /**
29
34
  * @public
30
- * <p>Creates a monitor in Amazon CloudWatch Internet Monitor. A monitor is built based on information from the application resources that you add: Virtual Private Clouds (VPCs),
31
- * Amazon CloudFront distributions, and WorkSpaces directories. </p>
32
- * <p>After you create a monitor, you can view the internet performance for your application, scoped to a location, as well as any health events that are
33
- * impairing traffic. Internet Monitor can also diagnose whether the impairment is on the Amazon Web Services network or is an issue with an internet service provider (ISP).</p>
35
+ * <p>Creates a monitor in Amazon CloudWatch Internet Monitor. A monitor is built based on information from the application resources that you add: Amazon Virtual Private Clouds (VPCs),
36
+ * Amazon CloudFront distributions, and WorkSpaces directories. Internet Monitor then publishes internet measurements from Amazon Web Services that are specific to
37
+ * the <i>city-networks</i>, that is, the locations and ASNs (typically internet service providers or ISPs),
38
+ * where clients access your application. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html">Using Amazon CloudWatch Internet Monitor</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
39
+ * <p>When you create a monitor, you set a maximum limit for the number of city-networks where client traffic is monitored. The city-network maximum
40
+ * that you choose is the limit, but you only pay for the number of city-networks that are actually monitored. You can change the maximum at any time
41
+ * by updating your monitor. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/IMCityNetworksMaximum.html">Choosing a city-network maximum value</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
34
42
  */
35
43
  createMonitor(args: CreateMonitorCommandInput, options?: __HttpHandlerOptions): Promise<CreateMonitorCommandOutput>;
36
44
  createMonitor(args: CreateMonitorCommandInput, cb: (err: any, data?: CreateMonitorCommandOutput) => void): void;
@@ -103,8 +111,11 @@ export declare class InternetMonitor extends InternetMonitorClient {
103
111
  untagResource(args: UntagResourceCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UntagResourceCommandOutput) => void): void;
104
112
  /**
105
113
  * @public
106
- * <p>Updates a monitor. You can update a monitor to add or remove resources, or to change the status of the monitor. You can't change the name of a
107
- * monitor.</p>
114
+ * <p>Updates a monitor. You can update a monitor to change the maximum number of city-networks (locations and ASNs or
115
+ * internet service providers), to add or remove resources,
116
+ * or to change the status of the monitor. Note that you can't change the name of a monitor.</p>
117
+ * <p>The city-network maximum that you choose is the limit, but you only pay for the number of city-networks that are actually monitored.
118
+ * For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/IMCityNetworksMaximum.html">Choosing a city-network maximum value</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
108
119
  */
109
120
  updateMonitor(args: UpdateMonitorCommandInput, options?: __HttpHandlerOptions): Promise<UpdateMonitorCommandOutput>;
110
121
  updateMonitor(args: UpdateMonitorCommandInput, cb: (err: any, data?: UpdateMonitorCommandOutput) => void): void;
@@ -153,17 +153,22 @@ export interface InternetMonitorClientResolvedConfig extends InternetMonitorClie
153
153
  }
154
154
  /**
155
155
  * @public
156
- * <p>Amazon CloudWatch Internet Monitor provides visibility into how internet issues impact the performance and availability between your applications hosted on Amazon Web Services and your end
157
- * users, reducing the time it takes for you to diagnose these issues, from days to minutes. You can explore internet measurements for different time frames
158
- * and at different geographic granularities, and quickly visualize the impact of issues, and then take action to improve your end users' experience, for
159
- * example, by switching to other Amazon Web Services services or rerouting traffic to your workload through differentAmazon Web Services Regions.</p>
160
- * <p> If the issue is caused by the Amazon Web Services network, you'll automatically receive an Amazon Web Services Health Dashboard notification with the steps that Amazon Web Services is taking
161
- * to mitigate the problem. To support integrating health information for geographies and networks specific to your application, Internet Monitor delivers measurements
162
- * to CloudWatch Logs and CloudWatch Metrics. Internet Monitor also sends health events to Amazon EventBridge, so you can set up notifications. Internet Monitor monitors internet connectivity
163
- * for your application through Amazon Virtual Private Clouds (VPCs), Amazon CloudFront distributions, and Amazon WorkSpaces directories.</p>
164
- * <p>To use Internet Monitor, you create a <i>monitor</i> and add resources to it, Virtual Private Clouds (VPCs), Amazon CloudFront distributions, or WorkSpaces
165
- * directories that show where your application's internet traffic is. Internet Monitor then provides internet measurements from Amazon Web Services that are specific to the locations
166
- * and networks that communicate with your application. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html"> Using Amazon CloudWatch Internet Monitor</a> in the Amazon CloudWatch User Guide.</p>
156
+ * <p>Amazon CloudWatch Internet Monitor provides visibility into how internet issues impact the performance and availability
157
+ * between your applications hosted on Amazon Web Services and your end users. It reduces the time it takes for you to diagnose
158
+ * internet issues from days to minutes. Internet Monitor uses the connectivity data that Amazon Web Services captures from its global
159
+ * networking footprint to calculate a baseline of performance and availability for internet traffic. This
160
+ * is the same data that Amazon Web Services uses to monitor internet uptime and availability. With those measurements
161
+ * as a baseline, Internet Monitor raises awareness for you when there are significant problems for your
162
+ * end users in the different geographic locations where your application runs.</p>
163
+ * <p>Internet Monitor publishes internet measurements to CloudWatch Logs and CloudWatch Metrics,
164
+ * to easily support using CloudWatch tools with health information for geographies and networks specific to your application.
165
+ * Internet Monitor sends health events to Amazon EventBridge so that you can set up notifications. If an issue is caused by the Amazon Web Services network,
166
+ * you also automatically receive an Amazon Web Services Health Dashboard notification with the steps that Amazon Web Services is taking to mitigate the problem.</p>
167
+ * <p>To use Internet Monitor, you create a <i>monitor</i> and associate your application's resources
168
+ * with it, VPCs, CloudFront distributions, or WorkSpaces directories, to enable Internet Monitor to know
169
+ * where your application's internet traffic is. Internet Monitor then provides internet measurements from Amazon Web Services that are specific to
170
+ * the locations and networks that communicate with your application.</p>
171
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html">Using Amazon CloudWatch Internet Monitor</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
167
172
  */
168
173
  export declare class InternetMonitorClient extends __Client<__HttpHandlerOptions, ServiceInputTypes, ServiceOutputTypes, InternetMonitorClientResolvedConfig> {
169
174
  /**
@@ -19,10 +19,13 @@ export interface CreateMonitorCommandOutput extends CreateMonitorOutput, __Metad
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Creates a monitor in Amazon CloudWatch Internet Monitor. A monitor is built based on information from the application resources that you add: Virtual Private Clouds (VPCs),
23
- * Amazon CloudFront distributions, and WorkSpaces directories. </p>
24
- * <p>After you create a monitor, you can view the internet performance for your application, scoped to a location, as well as any health events that are
25
- * impairing traffic. Internet Monitor can also diagnose whether the impairment is on the Amazon Web Services network or is an issue with an internet service provider (ISP).</p>
22
+ * <p>Creates a monitor in Amazon CloudWatch Internet Monitor. A monitor is built based on information from the application resources that you add: Amazon Virtual Private Clouds (VPCs),
23
+ * Amazon CloudFront distributions, and WorkSpaces directories. Internet Monitor then publishes internet measurements from Amazon Web Services that are specific to
24
+ * the <i>city-networks</i>, that is, the locations and ASNs (typically internet service providers or ISPs),
25
+ * where clients access your application. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-InternetMonitor.html">Using Amazon CloudWatch Internet Monitor</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
26
+ * <p>When you create a monitor, you set a maximum limit for the number of city-networks where client traffic is monitored. The city-network maximum
27
+ * that you choose is the limit, but you only pay for the number of city-networks that are actually monitored. You can change the maximum at any time
28
+ * by updating your monitor. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/IMCityNetworksMaximum.html">Choosing a city-network maximum value</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
26
29
  * @example
27
30
  * Use a bare-bones client and the command you need to make an API call.
28
31
  * ```javascript
@@ -39,6 +42,13 @@ export interface CreateMonitorCommandOutput extends CreateMonitorOutput, __Metad
39
42
  * "<keys>": "STRING_VALUE",
40
43
  * },
41
44
  * MaxCityNetworksToMonitor: Number("int"), // required
45
+ * InternetMeasurementsLogDelivery: { // InternetMeasurementsLogDelivery
46
+ * S3Config: { // S3Config
47
+ * BucketName: "STRING_VALUE",
48
+ * BucketPrefix: "STRING_VALUE",
49
+ * LogDeliveryStatus: "STRING_VALUE",
50
+ * },
51
+ * },
42
52
  * };
43
53
  * const command = new CreateMonitorCommand(input);
44
54
  * const response = await client.send(command);
@@ -19,8 +19,11 @@ export interface UpdateMonitorCommandOutput extends UpdateMonitorOutput, __Metad
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Updates a monitor. You can update a monitor to add or remove resources, or to change the status of the monitor. You can't change the name of a
23
- * monitor.</p>
22
+ * <p>Updates a monitor. You can update a monitor to change the maximum number of city-networks (locations and ASNs or
23
+ * internet service providers), to add or remove resources,
24
+ * or to change the status of the monitor. Note that you can't change the name of a monitor.</p>
25
+ * <p>The city-network maximum that you choose is the limit, but you only pay for the number of city-networks that are actually monitored.
26
+ * For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/IMCityNetworksMaximum.html">Choosing a city-network maximum value</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
24
27
  * @example
25
28
  * Use a bare-bones client and the command you need to make an API call.
26
29
  * ```javascript
@@ -38,6 +41,13 @@ export interface UpdateMonitorCommandOutput extends UpdateMonitorOutput, __Metad
38
41
  * Status: "STRING_VALUE",
39
42
  * ClientToken: "STRING_VALUE",
40
43
  * MaxCityNetworksToMonitor: Number("int"),
44
+ * InternetMeasurementsLogDelivery: { // InternetMeasurementsLogDelivery
45
+ * S3Config: { // S3Config
46
+ * BucketName: "STRING_VALUE",
47
+ * BucketPrefix: "STRING_VALUE",
48
+ * LogDeliveryStatus: "STRING_VALUE",
49
+ * },
50
+ * },
41
51
  * };
42
52
  * const command = new UpdateMonitorCommand(input);
43
53
  * const response = await client.send(command);
@@ -20,28 +20,28 @@ export declare class AccessDeniedException extends __BaseException {
20
20
  * easier to see those drops, we report that information to you in the form of health scores: a performance score and an availability score.</p>
21
21
  * <p>Availability in Internet Monitor represents the estimated percentage of traffic that is not seeing an availability drop. For example, an availability score of 99%
22
22
  * for an end user and service location pair is equivalent to 1% of the traffic experiencing an availability drop for that pair.</p>
23
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores"> How Internet Monitor calculates performance and availability
24
- * scores</a> in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.</p>
23
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores">How Internet Monitor calculates performance and availability
24
+ * scores</a> in the Amazon CloudWatch Internet Monitor section of the <i>Amazon CloudWatch User Guide</i>.</p>
25
25
  */
26
26
  export interface AvailabilityMeasurement {
27
27
  /**
28
28
  * <p>Experience scores, or health scores are calculated for different geographic and network provider combinations (that is, different granularities) and
29
29
  * also summed into global scores. If you view performance or availability scores without filtering for any specific geography or service provider, Amazon CloudWatch Internet Monitor
30
30
  * provides global health scores.</p>
31
- * <p>The Amazon CloudWatch Internet Monitor chapter in the CloudWatch User Guide includes detailed information about how Internet Monitor calculates health scores, including performance and
32
- * availability scores, and when it creates and resolves health events. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores"> How Amazon Web Services calculates performance and
33
- * availability scores</a> in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide.</p>
31
+ * <p>The Amazon CloudWatch Internet Monitor chapter in the <i>CloudWatch User Guide</i> includes detailed information about how Internet Monitor calculates health scores, including performance and
32
+ * availability scores, and when it creates and resolves health events. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores">How Amazon Web Services calculates performance and
33
+ * availability scores</a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
34
34
  */
35
35
  ExperienceScore?: number;
36
36
  /**
37
37
  * <p>The percentage of impact caused by a health event for total traffic globally.</p>
38
- * <p>For information about how Internet Monitor calculates impact, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html"> Inside Internet Monitor</a> in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User
38
+ * <p>For information about how Internet Monitor calculates impact, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html">Inside Internet Monitor</a> in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User
39
39
  * Guide.</p>
40
40
  */
41
41
  PercentOfTotalTrafficImpacted?: number;
42
42
  /**
43
43
  * <p>The percentage of impact caused by a health event for client location traffic globally.</p>
44
- * <p>For information about how Internet Monitor calculates impact, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html"> Inside Internet Monitor</a> in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User
44
+ * <p>For information about how Internet Monitor calculates impact, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html">Inside Internet Monitor</a> in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User
45
45
  * Guide.</p>
46
46
  */
47
47
  PercentOfClientLocationImpacted?: number;
@@ -70,6 +70,51 @@ export declare class ConflictException extends __BaseException {
70
70
  */
71
71
  constructor(opts: __ExceptionOptionType<ConflictException, __BaseException>);
72
72
  }
73
+ /**
74
+ * @public
75
+ * @enum
76
+ */
77
+ export declare const LogDeliveryStatus: {
78
+ readonly DISABLED: "DISABLED";
79
+ readonly ENABLED: "ENABLED";
80
+ };
81
+ /**
82
+ * @public
83
+ */
84
+ export type LogDeliveryStatus = (typeof LogDeliveryStatus)[keyof typeof LogDeliveryStatus];
85
+ /**
86
+ * @public
87
+ * <p>The configuration for publishing Amazon CloudWatch Internet Monitor internet measurements to Amazon S3. The configuration includes the bucket name and (optionally) prefix
88
+ * for the S3 bucket to store the measurements, and the delivery status. The delivery status is <code>ENABLED</code> or <code>DISABLED</code>, depending on
89
+ * whether you choose to deliver internet measurements to S3 logs.</p>
90
+ */
91
+ export interface S3Config {
92
+ /**
93
+ * <p>The Amazon S3 bucket name.</p>
94
+ */
95
+ BucketName?: string;
96
+ /**
97
+ * <p>The Amazon S3 bucket prefix.</p>
98
+ */
99
+ BucketPrefix?: string;
100
+ /**
101
+ * <p>The status of publishing Internet Monitor internet measurements to an Amazon S3 bucket.</p>
102
+ */
103
+ LogDeliveryStatus?: LogDeliveryStatus | string;
104
+ }
105
+ /**
106
+ * @public
107
+ * <p>Configuration information for other locations that you choose to publish Amazon CloudWatch Internet Monitor internet measurements to, such as Amazon S3.
108
+ * The measurements are also published to Amazon CloudWatch Logs.</p>
109
+ */
110
+ export interface InternetMeasurementsLogDelivery {
111
+ /**
112
+ * <p>The configuration information for publishing Internet Monitor internet measurements to Amazon S3. The configuration includes the bucket name and (optionally) prefix
113
+ * for the S3 bucket to store the measurements, and the delivery status. The delivery status is <code>ENABLED</code> or <code>DISABLED</code>, depending on
114
+ * whether you choose to deliver internet measurements to S3 logs.</p>
115
+ */
116
+ S3Config?: S3Config;
117
+ }
73
118
  /**
74
119
  * @public
75
120
  */
@@ -97,20 +142,31 @@ export interface CreateMonitorInput {
97
142
  */
98
143
  Tags?: Record<string, string>;
99
144
  /**
100
- * <p>The maximum number of city-network combinations (that is, combinations of a city location and network, such as an ISP) to be monitored
101
- * for your resources.</p>
145
+ * <p>The maximum number of city-networks to monitor for your resources. A city-network is the location (city) where clients access your application resources from and
146
+ * the network or ASN, such as an internet service provider (ISP), that clients access the resources through. This limit helps control billing costs.</p>
147
+ * <p>To learn more, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/IMCityNetworksMaximum.html">Choosing a city-network maximum value
148
+ * </a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
102
149
  */
103
150
  MaxCityNetworksToMonitor: number | undefined;
151
+ /**
152
+ * <p>Publish internet measurements for Internet Monitor to another location, such as an Amazon S3 bucket. The measurements are also published to Amazon CloudWatch Logs.</p>
153
+ */
154
+ InternetMeasurementsLogDelivery?: InternetMeasurementsLogDelivery;
104
155
  }
105
156
  /**
106
157
  * @public
158
+ * @enum
107
159
  */
108
- export declare enum MonitorConfigState {
109
- ACTIVE = "ACTIVE",
110
- ERROR = "ERROR",
111
- INACTIVE = "INACTIVE",
112
- PENDING = "PENDING"
113
- }
160
+ export declare const MonitorConfigState: {
161
+ readonly ACTIVE: "ACTIVE";
162
+ readonly ERROR: "ERROR";
163
+ readonly INACTIVE: "INACTIVE";
164
+ readonly PENDING: "PENDING";
165
+ };
166
+ /**
167
+ * @public
168
+ */
169
+ export type MonitorConfigState = (typeof MonitorConfigState)[keyof typeof MonitorConfigState];
114
170
  /**
115
171
  * @public
116
172
  */
@@ -220,11 +276,16 @@ export interface Network {
220
276
  }
221
277
  /**
222
278
  * @public
279
+ * @enum
223
280
  */
224
- export declare enum TriangulationEventType {
225
- AWS = "AWS",
226
- INTERNET = "Internet"
227
- }
281
+ export declare const TriangulationEventType: {
282
+ readonly AWS: "AWS";
283
+ readonly INTERNET: "Internet";
284
+ };
285
+ /**
286
+ * @public
287
+ */
288
+ export type TriangulationEventType = (typeof TriangulationEventType)[keyof typeof TriangulationEventType];
228
289
  /**
229
290
  * @public
230
291
  * <p>Information about the network impairment for a specific network measured by Amazon CloudWatch Internet Monitor.</p>
@@ -270,8 +331,8 @@ export interface RoundTripTime {
270
331
  * easier to see those drops, we report that information to you in the form of health scores: a performance score and an availability score.</p>
271
332
  * <p>Performance in Internet Monitor represents the estimated percentage of traffic that is not seeing a performance drop. For example, a performance score of 99% for
272
333
  * an end user and service location pair is equivalent to 1% of the traffic experiencing a performance drop for that pair.</p>
273
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores"> How Internet Monitor calculates performance and availability
274
- * scores</a> in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.</p>
334
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores">How Internet Monitor calculates performance and availability
335
+ * scores</a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
275
336
  */
276
337
  export interface PerformanceMeasurement {
277
338
  /**
@@ -279,28 +340,28 @@ export interface PerformanceMeasurement {
279
340
  * also totaled into global scores. If you view performance or availability scores without filtering for any specific geography or service provider, Amazon CloudWatch Internet Monitor
280
341
  * provides global health scores.</p>
281
342
  * <p>The Amazon CloudWatch Internet Monitor chapter in the CloudWatch User Guide includes detailed information about how Internet Monitor calculates health scores, including performance and
282
- * availability scores, and when it creates and resolves health events. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores"> How Amazon Web Services calculates performance and
283
- * availability scores</a> in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide.</p>
343
+ * availability scores, and when it creates and resolves health events. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores">How Amazon Web Services calculates performance and
344
+ * availability scores</a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
284
345
  */
285
346
  ExperienceScore?: number;
286
347
  /**
287
348
  * <p>How much performance impact was caused by a health event for total traffic globally. For performance, this is the percentage of how much latency
288
349
  * increased during the event compared to typical performance for your application traffic globally. </p>
289
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMHealthEventStartStop"> When Amazon Web Services creates and resolves health
290
- * events</a> in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide.</p>
350
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMHealthEventStartStop">When Amazon Web Services creates and resolves health
351
+ * events</a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
291
352
  */
292
353
  PercentOfTotalTrafficImpacted?: number;
293
354
  /**
294
355
  * <p>How much performance impact was caused by a health event at a client location. For performance, this is the percentage of how much latency increased
295
356
  * during the event compared to typical performance for traffic, from this client location to an Amazon Web Services location, using a specific client network. </p>
296
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMHealthEventStartStop"> When Amazon Web Services creates and resolves health
297
- * events</a> in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide.</p>
357
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMHealthEventStartStop">When Amazon Web Services creates and resolves health
358
+ * events</a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
298
359
  */
299
360
  PercentOfClientLocationImpacted?: number;
300
361
  /**
301
362
  * <p>This is the percentage of how much round-trip time increased during the event compared to typical round-trip time for your application for traffic. </p>
302
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMHealthEventStartStop"> When Amazon Web Services creates and resolves health
303
- * events</a> in the Amazon CloudWatch Internet Monitor section of the CloudWatch User Guide.</p>
363
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMHealthEventStartStop">When Amazon Web Services creates and resolves health
364
+ * events</a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
304
365
  */
305
366
  RoundTripTime?: RoundTripTime;
306
367
  }
@@ -316,25 +377,30 @@ export interface InternetHealth {
316
377
  /**
317
378
  * <p>Availability in Internet Monitor represents the estimated percentage of traffic that is not seeing an availability drop. For example, an availability score of 99%
318
379
  * for an end user and service location pair is equivalent to 1% of the traffic experiencing an availability drop for that pair.</p>
319
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores"> How Internet Monitor calculates performance and availability
320
- * scores</a> in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.</p>
380
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores">How Internet Monitor calculates performance and availability
381
+ * scores</a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
321
382
  */
322
383
  Availability?: AvailabilityMeasurement;
323
384
  /**
324
385
  * <p>Performance in Internet Monitor represents the estimated percentage of traffic that is not seeing a performance drop. For example, a performance score of 99% for
325
386
  * an end user and service location pair is equivalent to 1% of the traffic experiencing a performance drop for that pair.</p>
326
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores"> How Internet Monitor calculates performance and availability
327
- * scores</a> in the Amazon CloudWatch Internet Monitor section of the Amazon CloudWatch User Guide.</p>
387
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-inside-internet-monitor.html#IMExperienceScores">How Internet Monitor calculates performance and availability
388
+ * scores</a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
328
389
  */
329
390
  Performance?: PerformanceMeasurement;
330
391
  }
331
392
  /**
332
393
  * @public
394
+ * @enum
333
395
  */
334
- export declare enum HealthEventStatus {
335
- ACTIVE = "ACTIVE",
336
- RESOLVED = "RESOLVED"
337
- }
396
+ export declare const HealthEventStatus: {
397
+ readonly ACTIVE: "ACTIVE";
398
+ readonly RESOLVED: "RESOLVED";
399
+ };
400
+ /**
401
+ * @public
402
+ */
403
+ export type HealthEventStatus = (typeof HealthEventStatus)[keyof typeof HealthEventStatus];
338
404
  /**
339
405
  * @public
340
406
  * <p>Information about a location impacted by a health event in Amazon CloudWatch Internet Monitor.</p>
@@ -410,11 +476,16 @@ export interface ImpactedLocation {
410
476
  }
411
477
  /**
412
478
  * @public
479
+ * @enum
413
480
  */
414
- export declare enum HealthEventImpactType {
415
- AVAILABILITY = "AVAILABILITY",
416
- PERFORMANCE = "PERFORMANCE"
417
- }
481
+ export declare const HealthEventImpactType: {
482
+ readonly AVAILABILITY: "AVAILABILITY";
483
+ readonly PERFORMANCE: "PERFORMANCE";
484
+ };
485
+ /**
486
+ * @public
487
+ */
488
+ export type HealthEventImpactType = (typeof HealthEventImpactType)[keyof typeof HealthEventImpactType];
418
489
  /**
419
490
  * @public
420
491
  */
@@ -471,15 +542,20 @@ export interface GetMonitorInput {
471
542
  }
472
543
  /**
473
544
  * @public
545
+ * @enum
474
546
  */
475
- export declare enum MonitorProcessingStatusCode {
476
- COLLECTING_DATA = "COLLECTING_DATA",
477
- FAULT_ACCESS_CLOUDWATCH = "FAULT_ACCESS_CLOUDWATCH",
478
- FAULT_SERVICE = "FAULT_SERVICE",
479
- INACTIVE = "INACTIVE",
480
- INSUFFICIENT_DATA = "INSUFFICIENT_DATA",
481
- OK = "OK"
482
- }
547
+ export declare const MonitorProcessingStatusCode: {
548
+ readonly COLLECTING_DATA: "COLLECTING_DATA";
549
+ readonly FAULT_ACCESS_CLOUDWATCH: "FAULT_ACCESS_CLOUDWATCH";
550
+ readonly FAULT_SERVICE: "FAULT_SERVICE";
551
+ readonly INACTIVE: "INACTIVE";
552
+ readonly INSUFFICIENT_DATA: "INSUFFICIENT_DATA";
553
+ readonly OK: "OK";
554
+ };
555
+ /**
556
+ * @public
557
+ */
558
+ export type MonitorProcessingStatusCode = (typeof MonitorProcessingStatusCode)[keyof typeof MonitorProcessingStatusCode];
483
559
  /**
484
560
  * @public
485
561
  */
@@ -521,10 +597,16 @@ export interface GetMonitorOutput {
521
597
  */
522
598
  Tags?: Record<string, string>;
523
599
  /**
524
- * <p>The maximum number of city-network combinations (that is, combinations of a city location and network, such as an ISP) to be monitored
525
- * for your resources.</p>
600
+ * <p>The maximum number of city-networks to monitor for your resources. A city-network is the location (city) where clients access your application resources from and
601
+ * the network or ASN, such as an internet service provider (ISP), that clients access the resources through. This limit helps control billing costs.</p>
602
+ * <p>To learn more, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/IMCityNetworksMaximum.html">Choosing a city-network maximum value
603
+ * </a> in the Amazon CloudWatch Internet Monitor section of the <i>CloudWatch User Guide</i>.</p>
526
604
  */
527
605
  MaxCityNetworksToMonitor: number | undefined;
606
+ /**
607
+ * <p>Publish internet measurements for Internet Monitor to another location, such as an Amazon S3 bucket. The measurements are also published to Amazon CloudWatch Logs.</p>
608
+ */
609
+ InternetMeasurementsLogDelivery?: InternetMeasurementsLogDelivery;
528
610
  }
529
611
  /**
530
612
  * @public
@@ -771,10 +853,15 @@ export interface UpdateMonitorInput {
771
853
  */
772
854
  ClientToken?: string;
773
855
  /**
774
- * <p>The maximum number of city-network combinations (that is, combinations of a city location and network, such as an ISP) to be monitored
775
- * for your resources.</p>
856
+ * <p>The maximum number of city-networks to monitor for your resources. A city-network is the location (city) where clients access your application resources from
857
+ * and the network or ASN,
858
+ * such as an internet service provider, that clients access the resources through.</p>
776
859
  */
777
860
  MaxCityNetworksToMonitor?: number;
861
+ /**
862
+ * <p>Publish internet measurements for Internet Monitor to another location, such as an Amazon S3 bucket. The measurements are also published to Amazon CloudWatch Logs.</p>
863
+ */
864
+ InternetMeasurementsLogDelivery?: InternetMeasurementsLogDelivery;
778
865
  }
779
866
  /**
780
867
  * @public
@@ -24,19 +24,36 @@ export declare class ConflictException extends __BaseException {
24
24
  readonly $fault: "client";
25
25
  constructor(opts: __ExceptionOptionType<ConflictException, __BaseException>);
26
26
  }
27
+ export declare const LogDeliveryStatus: {
28
+ readonly DISABLED: "DISABLED";
29
+ readonly ENABLED: "ENABLED";
30
+ };
31
+ export type LogDeliveryStatus =
32
+ (typeof LogDeliveryStatus)[keyof typeof LogDeliveryStatus];
33
+ export interface S3Config {
34
+ BucketName?: string;
35
+ BucketPrefix?: string;
36
+ LogDeliveryStatus?: LogDeliveryStatus | string;
37
+ }
38
+ export interface InternetMeasurementsLogDelivery {
39
+ S3Config?: S3Config;
40
+ }
27
41
  export interface CreateMonitorInput {
28
42
  MonitorName: string | undefined;
29
43
  Resources?: string[];
30
44
  ClientToken?: string;
31
45
  Tags?: Record<string, string>;
32
46
  MaxCityNetworksToMonitor: number | undefined;
33
- }
34
- export declare enum MonitorConfigState {
35
- ACTIVE = "ACTIVE",
36
- ERROR = "ERROR",
37
- INACTIVE = "INACTIVE",
38
- PENDING = "PENDING",
39
- }
47
+ InternetMeasurementsLogDelivery?: InternetMeasurementsLogDelivery;
48
+ }
49
+ export declare const MonitorConfigState: {
50
+ readonly ACTIVE: "ACTIVE";
51
+ readonly ERROR: "ERROR";
52
+ readonly INACTIVE: "INACTIVE";
53
+ readonly PENDING: "PENDING";
54
+ };
55
+ export type MonitorConfigState =
56
+ (typeof MonitorConfigState)[keyof typeof MonitorConfigState];
40
57
  export interface CreateMonitorOutput {
41
58
  Arn: string | undefined;
42
59
  Status: MonitorConfigState | string | undefined;
@@ -85,10 +102,12 @@ export interface Network {
85
102
  ASName: string | undefined;
86
103
  ASNumber: number | undefined;
87
104
  }
88
- export declare enum TriangulationEventType {
89
- AWS = "AWS",
90
- INTERNET = "Internet",
91
- }
105
+ export declare const TriangulationEventType: {
106
+ readonly AWS: "AWS";
107
+ readonly INTERNET: "Internet";
108
+ };
109
+ export type TriangulationEventType =
110
+ (typeof TriangulationEventType)[keyof typeof TriangulationEventType];
92
111
  export interface NetworkImpairment {
93
112
  Networks: Network[] | undefined;
94
113
  AsPath: Network[] | undefined;
@@ -109,10 +128,12 @@ export interface InternetHealth {
109
128
  Availability?: AvailabilityMeasurement;
110
129
  Performance?: PerformanceMeasurement;
111
130
  }
112
- export declare enum HealthEventStatus {
113
- ACTIVE = "ACTIVE",
114
- RESOLVED = "RESOLVED",
115
- }
131
+ export declare const HealthEventStatus: {
132
+ readonly ACTIVE: "ACTIVE";
133
+ readonly RESOLVED: "RESOLVED";
134
+ };
135
+ export type HealthEventStatus =
136
+ (typeof HealthEventStatus)[keyof typeof HealthEventStatus];
116
137
  export interface ImpactedLocation {
117
138
  ASName: string | undefined;
118
139
  ASNumber: number | undefined;
@@ -129,10 +150,12 @@ export interface ImpactedLocation {
129
150
  CausedBy?: NetworkImpairment;
130
151
  InternetHealth?: InternetHealth;
131
152
  }
132
- export declare enum HealthEventImpactType {
133
- AVAILABILITY = "AVAILABILITY",
134
- PERFORMANCE = "PERFORMANCE",
135
- }
153
+ export declare const HealthEventImpactType: {
154
+ readonly AVAILABILITY: "AVAILABILITY";
155
+ readonly PERFORMANCE: "PERFORMANCE";
156
+ };
157
+ export type HealthEventImpactType =
158
+ (typeof HealthEventImpactType)[keyof typeof HealthEventImpactType];
136
159
  export interface GetHealthEventOutput {
137
160
  EventArn: string | undefined;
138
161
  EventId: string | undefined;
@@ -148,14 +171,16 @@ export interface GetHealthEventOutput {
148
171
  export interface GetMonitorInput {
149
172
  MonitorName: string | undefined;
150
173
  }
151
- export declare enum MonitorProcessingStatusCode {
152
- COLLECTING_DATA = "COLLECTING_DATA",
153
- FAULT_ACCESS_CLOUDWATCH = "FAULT_ACCESS_CLOUDWATCH",
154
- FAULT_SERVICE = "FAULT_SERVICE",
155
- INACTIVE = "INACTIVE",
156
- INSUFFICIENT_DATA = "INSUFFICIENT_DATA",
157
- OK = "OK",
158
- }
174
+ export declare const MonitorProcessingStatusCode: {
175
+ readonly COLLECTING_DATA: "COLLECTING_DATA";
176
+ readonly FAULT_ACCESS_CLOUDWATCH: "FAULT_ACCESS_CLOUDWATCH";
177
+ readonly FAULT_SERVICE: "FAULT_SERVICE";
178
+ readonly INACTIVE: "INACTIVE";
179
+ readonly INSUFFICIENT_DATA: "INSUFFICIENT_DATA";
180
+ readonly OK: "OK";
181
+ };
182
+ export type MonitorProcessingStatusCode =
183
+ (typeof MonitorProcessingStatusCode)[keyof typeof MonitorProcessingStatusCode];
159
184
  export interface GetMonitorOutput {
160
185
  MonitorName: string | undefined;
161
186
  MonitorArn: string | undefined;
@@ -167,6 +192,7 @@ export interface GetMonitorOutput {
167
192
  ProcessingStatusInfo?: string;
168
193
  Tags?: Record<string, string>;
169
194
  MaxCityNetworksToMonitor: number | undefined;
195
+ InternetMeasurementsLogDelivery?: InternetMeasurementsLogDelivery;
170
196
  }
171
197
  export interface HealthEvent {
172
198
  EventArn: string | undefined;
@@ -250,6 +276,7 @@ export interface UpdateMonitorInput {
250
276
  Status?: MonitorConfigState | string;
251
277
  ClientToken?: string;
252
278
  MaxCityNetworksToMonitor?: number;
279
+ InternetMeasurementsLogDelivery?: InternetMeasurementsLogDelivery;
253
280
  }
254
281
  export interface UpdateMonitorOutput {
255
282
  MonitorArn: string | undefined;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-internetmonitor",
3
3
  "description": "AWS SDK for JavaScript Internetmonitor Client for Node.js, Browser and React Native",
4
- "version": "3.301.0",
4
+ "version": "3.304.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "tsc -p tsconfig.cjs.json",
@@ -21,43 +21,43 @@
21
21
  "dependencies": {
22
22
  "@aws-crypto/sha256-browser": "3.0.0",
23
23
  "@aws-crypto/sha256-js": "3.0.0",
24
- "@aws-sdk/client-sts": "3.301.0",
25
- "@aws-sdk/config-resolver": "3.300.0",
26
- "@aws-sdk/credential-provider-node": "3.301.0",
27
- "@aws-sdk/fetch-http-handler": "3.296.0",
28
- "@aws-sdk/hash-node": "3.296.0",
29
- "@aws-sdk/invalid-dependency": "3.296.0",
30
- "@aws-sdk/middleware-content-length": "3.296.0",
31
- "@aws-sdk/middleware-endpoint": "3.299.0",
32
- "@aws-sdk/middleware-host-header": "3.296.0",
33
- "@aws-sdk/middleware-logger": "3.296.0",
34
- "@aws-sdk/middleware-recursion-detection": "3.296.0",
35
- "@aws-sdk/middleware-retry": "3.300.0",
36
- "@aws-sdk/middleware-serde": "3.296.0",
37
- "@aws-sdk/middleware-signing": "3.299.0",
38
- "@aws-sdk/middleware-stack": "3.296.0",
39
- "@aws-sdk/middleware-user-agent": "3.299.0",
40
- "@aws-sdk/node-config-provider": "3.300.0",
41
- "@aws-sdk/node-http-handler": "3.296.0",
42
- "@aws-sdk/protocol-http": "3.296.0",
43
- "@aws-sdk/smithy-client": "3.296.0",
44
- "@aws-sdk/types": "3.296.0",
45
- "@aws-sdk/url-parser": "3.296.0",
46
- "@aws-sdk/util-base64": "3.295.0",
47
- "@aws-sdk/util-body-length-browser": "3.295.0",
48
- "@aws-sdk/util-body-length-node": "3.295.0",
49
- "@aws-sdk/util-defaults-mode-browser": "3.296.0",
50
- "@aws-sdk/util-defaults-mode-node": "3.300.0",
51
- "@aws-sdk/util-endpoints": "3.296.0",
52
- "@aws-sdk/util-retry": "3.296.0",
53
- "@aws-sdk/util-user-agent-browser": "3.299.0",
54
- "@aws-sdk/util-user-agent-node": "3.300.0",
55
- "@aws-sdk/util-utf8": "3.295.0",
24
+ "@aws-sdk/client-sts": "3.303.0",
25
+ "@aws-sdk/config-resolver": "3.303.0",
26
+ "@aws-sdk/credential-provider-node": "3.303.0",
27
+ "@aws-sdk/fetch-http-handler": "3.303.0",
28
+ "@aws-sdk/hash-node": "3.303.0",
29
+ "@aws-sdk/invalid-dependency": "3.303.0",
30
+ "@aws-sdk/middleware-content-length": "3.303.0",
31
+ "@aws-sdk/middleware-endpoint": "3.303.0",
32
+ "@aws-sdk/middleware-host-header": "3.303.0",
33
+ "@aws-sdk/middleware-logger": "3.303.0",
34
+ "@aws-sdk/middleware-recursion-detection": "3.303.0",
35
+ "@aws-sdk/middleware-retry": "3.303.0",
36
+ "@aws-sdk/middleware-serde": "3.303.0",
37
+ "@aws-sdk/middleware-signing": "3.303.0",
38
+ "@aws-sdk/middleware-stack": "3.303.0",
39
+ "@aws-sdk/middleware-user-agent": "3.303.0",
40
+ "@aws-sdk/node-config-provider": "3.303.0",
41
+ "@aws-sdk/node-http-handler": "3.303.0",
42
+ "@aws-sdk/protocol-http": "3.303.0",
43
+ "@aws-sdk/smithy-client": "3.303.0",
44
+ "@aws-sdk/types": "3.303.0",
45
+ "@aws-sdk/url-parser": "3.303.0",
46
+ "@aws-sdk/util-base64": "3.303.0",
47
+ "@aws-sdk/util-body-length-browser": "3.303.0",
48
+ "@aws-sdk/util-body-length-node": "3.303.0",
49
+ "@aws-sdk/util-defaults-mode-browser": "3.303.0",
50
+ "@aws-sdk/util-defaults-mode-node": "3.303.0",
51
+ "@aws-sdk/util-endpoints": "3.303.0",
52
+ "@aws-sdk/util-retry": "3.303.0",
53
+ "@aws-sdk/util-user-agent-browser": "3.303.0",
54
+ "@aws-sdk/util-user-agent-node": "3.303.0",
55
+ "@aws-sdk/util-utf8": "3.303.0",
56
56
  "tslib": "^2.5.0",
57
57
  "uuid": "^8.3.2"
58
58
  },
59
59
  "devDependencies": {
60
- "@aws-sdk/service-client-documentation-generator": "3.295.0",
60
+ "@aws-sdk/service-client-documentation-generator": "3.303.0",
61
61
  "@tsconfig/node14": "1.0.3",
62
62
  "@types/node": "^14.14.31",
63
63
  "@types/uuid": "^8.3.0",