@aws-sdk/client-application-signals 3.1072.0 → 3.1074.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.
Files changed (50) hide show
  1. package/README.md +49 -0
  2. package/dist-cjs/index.js +154 -1
  3. package/dist-cjs/schemas/schemas_0.js +377 -64
  4. package/dist-es/ApplicationSignals.js +18 -0
  5. package/dist-es/commands/BatchDeleteInstrumentationConfigurationsCommand.js +16 -0
  6. package/dist-es/commands/CreateInstrumentationConfigurationCommand.js +16 -0
  7. package/dist-es/commands/DeleteInstrumentationConfigurationCommand.js +16 -0
  8. package/dist-es/commands/GetInstrumentationConfigurationCommand.js +16 -0
  9. package/dist-es/commands/GetInstrumentationConfigurationStatusCommand.js +16 -0
  10. package/dist-es/commands/ListInstrumentationConfigurationsCommand.js +16 -0
  11. package/dist-es/commands/ReportInstrumentationConfigurationStatusCommand.js +16 -0
  12. package/dist-es/commands/index.js +7 -0
  13. package/dist-es/models/enums.js +39 -0
  14. package/dist-es/pagination/GetInstrumentationConfigurationStatusPaginator.js +4 -0
  15. package/dist-es/pagination/ListInstrumentationConfigurationsPaginator.js +4 -0
  16. package/dist-es/pagination/index.js +2 -0
  17. package/dist-es/schemas/schemas_0.js +347 -64
  18. package/dist-types/ApplicationSignals.d.ts +63 -0
  19. package/dist-types/ApplicationSignalsClient.d.ts +9 -2
  20. package/dist-types/commands/BatchDeleteInstrumentationConfigurationsCommand.d.ts +111 -0
  21. package/dist-types/commands/CreateInstrumentationConfigurationCommand.d.ts +181 -0
  22. package/dist-types/commands/DeleteInstrumentationConfigurationCommand.d.ts +99 -0
  23. package/dist-types/commands/GetInstrumentationConfigurationCommand.d.ts +146 -0
  24. package/dist-types/commands/GetInstrumentationConfigurationStatusCommand.d.ts +124 -0
  25. package/dist-types/commands/ListInstrumentationConfigurationsCommand.d.ts +143 -0
  26. package/dist-types/commands/ReportInstrumentationConfigurationStatusCommand.d.ts +104 -0
  27. package/dist-types/commands/index.d.ts +7 -0
  28. package/dist-types/models/enums.d.ts +118 -0
  29. package/dist-types/models/models_0.d.ts +1087 -78
  30. package/dist-types/pagination/GetInstrumentationConfigurationStatusPaginator.d.ts +7 -0
  31. package/dist-types/pagination/ListInstrumentationConfigurationsPaginator.d.ts +7 -0
  32. package/dist-types/pagination/index.d.ts +2 -0
  33. package/dist-types/schemas/schemas_0.d.ts +37 -0
  34. package/dist-types/ts3.4/ApplicationSignals.d.ts +169 -0
  35. package/dist-types/ts3.4/ApplicationSignalsClient.d.ts +42 -0
  36. package/dist-types/ts3.4/commands/BatchDeleteInstrumentationConfigurationsCommand.d.ts +53 -0
  37. package/dist-types/ts3.4/commands/CreateInstrumentationConfigurationCommand.d.ts +53 -0
  38. package/dist-types/ts3.4/commands/DeleteInstrumentationConfigurationCommand.d.ts +53 -0
  39. package/dist-types/ts3.4/commands/GetInstrumentationConfigurationCommand.d.ts +53 -0
  40. package/dist-types/ts3.4/commands/GetInstrumentationConfigurationStatusCommand.d.ts +53 -0
  41. package/dist-types/ts3.4/commands/ListInstrumentationConfigurationsCommand.d.ts +53 -0
  42. package/dist-types/ts3.4/commands/ReportInstrumentationConfigurationStatusCommand.d.ts +53 -0
  43. package/dist-types/ts3.4/commands/index.d.ts +7 -0
  44. package/dist-types/ts3.4/models/enums.d.ts +55 -0
  45. package/dist-types/ts3.4/models/models_0.d.ts +290 -4
  46. package/dist-types/ts3.4/pagination/GetInstrumentationConfigurationStatusPaginator.d.ts +11 -0
  47. package/dist-types/ts3.4/pagination/ListInstrumentationConfigurationsPaginator.d.ts +11 -0
  48. package/dist-types/ts3.4/pagination/index.d.ts +2 -0
  49. package/dist-types/ts3.4/schemas/schemas_0.d.ts +37 -0
  50. package/package.json +3 -3
@@ -1,4 +1,163 @@
1
- import type { ChangeEventType, ConnectionType, DetailLevel, DurationUnit, EvaluationType, MetricSourceType, SelectionType, ServiceLevelIndicatorComparisonOperator, ServiceLevelIndicatorMetricType, ServiceLevelObjectiveBudgetStatus, Severity, StandardUnit } from "./enums";
1
+ import type { BatchDeleteErrorCode, ChangeEventType, ConnectionType, DetailLevel, DurationUnit, DynamicInstrumentationDeletionStatus, DynamicInstrumentationSignalType, EvaluationType, InstrumentationConfigurationStatus, InstrumentationErrorCause, InstrumentationType, MetricSourceType, ProgrammingLanguage, SelectionType, ServiceLevelIndicatorComparisonOperator, ServiceLevelIndicatorMetricType, ServiceLevelObjectiveBudgetStatus, Severity, StandardUnit, UnprocessedStatusEventFailureReason } from "./enums";
2
+ /**
3
+ * Parameters for targeted delete by ARN list.
4
+ * @public
5
+ */
6
+ export interface BatchDeleteByResourceArns {
7
+ /**
8
+ * List of resource ARNs to delete.
9
+ * @public
10
+ */
11
+ ResourceArns: string[] | undefined;
12
+ /**
13
+ * Instrumentation type: BREAKPOINT or PROBE.
14
+ * @public
15
+ */
16
+ InstrumentationType: InstrumentationType | undefined;
17
+ }
18
+ /**
19
+ * Scope parameters for bulk delete by scope.
20
+ * @public
21
+ */
22
+ export interface BatchDeleteScope {
23
+ /**
24
+ * Service name for the instrumentation configurations.
25
+ * @public
26
+ */
27
+ Service: string | undefined;
28
+ /**
29
+ * Environment identifier for the instrumentation configurations.
30
+ * @public
31
+ */
32
+ Environment: string | undefined;
33
+ /**
34
+ * Instrumentation type: BREAKPOINT or PROBE.
35
+ * @public
36
+ */
37
+ InstrumentationType: InstrumentationType | undefined;
38
+ }
39
+ /**
40
+ * Union type for batch delete target selection.
41
+ * Exactly one of the two modes must be specified.
42
+ * @public
43
+ */
44
+ export type BatchDeleteDeletionTarget = BatchDeleteDeletionTarget.ResourceArnsMember | BatchDeleteDeletionTarget.ScopeMember | BatchDeleteDeletionTarget.$UnknownMember;
45
+ /**
46
+ * @public
47
+ */
48
+ export declare namespace BatchDeleteDeletionTarget {
49
+ /**
50
+ * Delete all configurations matching the specified scope.
51
+ * @public
52
+ */
53
+ interface ScopeMember {
54
+ Scope: BatchDeleteScope;
55
+ ResourceArns?: never;
56
+ $unknown?: never;
57
+ }
58
+ /**
59
+ * Delete specific configurations by ARN list.
60
+ * @public
61
+ */
62
+ interface ResourceArnsMember {
63
+ Scope?: never;
64
+ ResourceArns: BatchDeleteByResourceArns;
65
+ $unknown?: never;
66
+ }
67
+ /**
68
+ * @public
69
+ */
70
+ interface $UnknownMember {
71
+ Scope?: never;
72
+ ResourceArns?: never;
73
+ $unknown: [string, any];
74
+ }
75
+ /**
76
+ * @deprecated unused in schema-serde mode.
77
+ *
78
+ */
79
+ interface Visitor<T> {
80
+ Scope: (value: BatchDeleteScope) => T;
81
+ ResourceArns: (value: BatchDeleteByResourceArns) => T;
82
+ _: (name: string, value: any) => T;
83
+ }
84
+ }
85
+ /**
86
+ * @public
87
+ */
88
+ export interface BatchDeleteInstrumentationConfigurationsRequest {
89
+ /**
90
+ * The deletion target - either bulk by scope or targeted by ARN list.
91
+ * @public
92
+ */
93
+ DeletionTarget: BatchDeleteDeletionTarget | undefined;
94
+ }
95
+ /**
96
+ * Represents an error that occurred when attempting to delete a configuration.
97
+ * @public
98
+ */
99
+ export interface BatchDeleteError {
100
+ /**
101
+ * ARN of the configuration that failed to delete.
102
+ * @public
103
+ */
104
+ ResourceArn: string | undefined;
105
+ /**
106
+ * Error code indicating the type of failure.
107
+ * @public
108
+ */
109
+ Code: BatchDeleteErrorCode | undefined;
110
+ /**
111
+ * Descriptive error message.
112
+ * @public
113
+ */
114
+ Message: string | undefined;
115
+ }
116
+ /**
117
+ * Represents a successfully deleted instrumentation configuration.
118
+ * @public
119
+ */
120
+ export interface BatchDeleteSuccessfulDeletion {
121
+ /**
122
+ * ARN of the deleted configuration (populated only when deleting by ARN list).
123
+ * @public
124
+ */
125
+ ResourceArn?: string | undefined;
126
+ /**
127
+ * Signal type of the deleted configuration (populated only when deleting by scope).
128
+ * @public
129
+ */
130
+ SignalType?: string | undefined;
131
+ /**
132
+ * Location hash of the deleted configuration (populated only when deleting by scope).
133
+ * @public
134
+ */
135
+ LocationHash?: string | undefined;
136
+ }
137
+ /**
138
+ * @public
139
+ */
140
+ export interface BatchDeleteInstrumentationConfigurationsResponse {
141
+ /**
142
+ * Number of configurations successfully deleted.
143
+ * When deleting by scope, this is the total count of deleted items.
144
+ * When deleting by ARN list, this equals the length of SuccessfulDeletions.
145
+ * @public
146
+ */
147
+ DeletedCount: number | undefined;
148
+ /**
149
+ * List of successfully deleted configurations.
150
+ * Deleting by scope populates SignalType and LocationHash per item.
151
+ * Deleting by ARN list populates ResourceArn per item.
152
+ * @public
153
+ */
154
+ SuccessfulDeletions: BatchDeleteSuccessfulDeletion[] | undefined;
155
+ /**
156
+ * List of configurations that failed to delete.
157
+ * @public
158
+ */
159
+ Errors: BatchDeleteError[] | undefined;
160
+ }
2
161
  /**
3
162
  * @public
4
163
  */
@@ -589,134 +748,756 @@ export interface ServiceLevelObjectiveBudgetReport {
589
748
  */
590
749
  export interface BatchGetServiceLevelObjectiveBudgetReportOutput {
591
750
  /**
592
- * <p>The date and time that the report is for. It is expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC.</p>
751
+ * <p>The date and time that the report is for. It is expressed as the number of milliseconds since Jan 1, 1970 00:00:00 UTC.</p>
752
+ * @public
753
+ */
754
+ Timestamp: Date | undefined;
755
+ /**
756
+ * <p>An array of structures, where each structure is one budget report.</p>
757
+ * @public
758
+ */
759
+ Reports: ServiceLevelObjectiveBudgetReport[] | undefined;
760
+ /**
761
+ * <p>An array of structures, where each structure includes an error indicating that one of the requests in the array was not valid.</p>
762
+ * @public
763
+ */
764
+ Errors: ServiceLevelObjectiveBudgetReportError[] | undefined;
765
+ }
766
+ /**
767
+ * <p>The recurrence rule for the SLO time window exclusion .</p>
768
+ * @public
769
+ */
770
+ export interface RecurrenceRule {
771
+ /**
772
+ * <p>A cron or rate expression that specifies the schedule for the exclusion window.</p>
773
+ * @public
774
+ */
775
+ Expression: string | undefined;
776
+ }
777
+ /**
778
+ * <p>The object that defines the time length of an exclusion window.</p>
779
+ * @public
780
+ */
781
+ export interface Window {
782
+ /**
783
+ * <p>The unit of time for the exclusion window duration. Valid values: MINUTE, HOUR, DAY, MONTH.</p>
784
+ * @public
785
+ */
786
+ DurationUnit: DurationUnit | undefined;
787
+ /**
788
+ * <p>The number of time units for the exclusion window length.</p>
789
+ * @public
790
+ */
791
+ Duration: number | undefined;
792
+ }
793
+ /**
794
+ * <p>The core SLO time window exclusion object that includes Window, StartTime, RecurrenceRule, and Reason.</p>
795
+ * @public
796
+ */
797
+ export interface ExclusionWindow {
798
+ /**
799
+ * <p>The SLO time window exclusion .</p>
800
+ * @public
801
+ */
802
+ Window: Window | undefined;
803
+ /**
804
+ * <p>The start of the SLO time window exclusion. Defaults to current time if not specified.</p>
805
+ * @public
806
+ */
807
+ StartTime?: Date | undefined;
808
+ /**
809
+ * <p>The recurrence rule for the SLO time window exclusion. Supports both cron and rate expressions.</p>
810
+ * @public
811
+ */
812
+ RecurrenceRule?: RecurrenceRule | undefined;
813
+ /**
814
+ * <p>A description explaining why this time period should be excluded from SLO calculations.</p>
815
+ * @public
816
+ */
817
+ Reason?: string | undefined;
818
+ }
819
+ /**
820
+ * @public
821
+ */
822
+ export interface BatchUpdateExclusionWindowsInput {
823
+ /**
824
+ * <p>The list of SLO IDs to add or remove exclusion windows from.</p>
825
+ * @public
826
+ */
827
+ SloIds: string[] | undefined;
828
+ /**
829
+ * <p>A list of exclusion windows to add to the specified SLOs. You can add up to 10 exclusion windows per SLO.</p>
830
+ * @public
831
+ */
832
+ AddExclusionWindows?: ExclusionWindow[] | undefined;
833
+ /**
834
+ * <p>A list of exclusion windows to remove from the specified SLOs. The window configuration must match an existing exclusion window.</p>
835
+ * @public
836
+ */
837
+ RemoveExclusionWindows?: ExclusionWindow[] | undefined;
838
+ }
839
+ /**
840
+ * <p>An array of structures, where each structure includes an error indicating that one of the requests in the array was not valid.</p>
841
+ * @public
842
+ */
843
+ export interface BatchUpdateExclusionWindowsError {
844
+ /**
845
+ * <p>The SLO ID in the error.</p>
846
+ * @public
847
+ */
848
+ SloId: string | undefined;
849
+ /**
850
+ * <p>The error code.</p>
851
+ * @public
852
+ */
853
+ ErrorCode: string | undefined;
854
+ /**
855
+ * <p>The error message.</p>
856
+ * @public
857
+ */
858
+ ErrorMessage: string | undefined;
859
+ }
860
+ /**
861
+ * @public
862
+ */
863
+ export interface BatchUpdateExclusionWindowsOutput {
864
+ /**
865
+ * <p>The list of SLO IDs that were successfully processed.</p>
866
+ * @public
867
+ */
868
+ SloIds: string[] | undefined;
869
+ /**
870
+ * <p>A list of errors that occurred while processing the request.</p>
871
+ * @public
872
+ */
873
+ Errors: BatchUpdateExclusionWindowsError[] | undefined;
874
+ }
875
+ /**
876
+ * <p>Guardrails that prevent instrumentation from impacting application performance by limiting how much data is captured.</p>
877
+ * @public
878
+ */
879
+ export interface CaptureLimitsConfig {
880
+ /**
881
+ * <p>The maximum number of times the instrumentation point can be hit before it is automatically disabled. Defaults to 100.</p>
882
+ * @public
883
+ */
884
+ MaxHits?: number | undefined;
885
+ /**
886
+ * <p>The maximum length of captured string values in characters. Strings longer than this are truncated. Defaults to 128.</p>
887
+ * @public
888
+ */
889
+ MaxStringLength?: number | undefined;
890
+ /**
891
+ * <p>The maximum number of items to capture from any collection to prevent large payloads. Defaults to 10.</p>
892
+ * @public
893
+ */
894
+ MaxCollectionWidth?: number | undefined;
895
+ /**
896
+ * <p>The maximum nesting depth to traverse inside collections. Defaults to 3.</p>
897
+ * @public
898
+ */
899
+ MaxCollectionDepth?: number | undefined;
900
+ /**
901
+ * <p>The maximum number of stack frames to capture in stack traces. Defaults to 2.</p>
902
+ * @public
903
+ */
904
+ MaxStackFrames?: number | undefined;
905
+ /**
906
+ * <p>The maximum total size, in bytes, of a captured stack trace. Defaults to 1000.</p>
907
+ * @public
908
+ */
909
+ MaxStackTraceSize?: number | undefined;
910
+ /**
911
+ * <p>The maximum depth for nested object traversal when capturing structured data. Defaults to 3.</p>
912
+ * @public
913
+ */
914
+ MaxObjectDepth?: number | undefined;
915
+ /**
916
+ * <p>The maximum number of fields to capture for any object. Defaults to 10.</p>
917
+ * @public
918
+ */
919
+ MaxFieldsPerObject?: number | undefined;
920
+ }
921
+ /**
922
+ * <p>Defines what data to capture for code-level instrumentation, including arguments, return values, stack traces, local variables, and safety limits.</p>
923
+ * @public
924
+ */
925
+ export interface CodeCaptureConfiguration {
926
+ /**
927
+ * <p>The function arguments to capture. Omit to capture defaults, use an empty list to capture none, use <code>["*"]</code> to capture all arguments, or specify argument names to capture selectively (up to 10 entries).</p>
928
+ * @public
929
+ */
930
+ CaptureArguments?: string[] | undefined;
931
+ /**
932
+ * <p>Whether to capture the return value. Defaults to false.</p>
933
+ * @public
934
+ */
935
+ CaptureReturn?: boolean | undefined;
936
+ /**
937
+ * <p>Whether to capture a stack trace when the instrumentation point is hit. Defaults to true.</p>
938
+ * @public
939
+ */
940
+ CaptureStackTrace?: boolean | undefined;
941
+ /**
942
+ * <p>The local variables to capture by name. Omit or pass an empty list to capture none. You can specify up to 20 names.</p>
943
+ * @public
944
+ */
945
+ CaptureLocals?: string[] | undefined;
946
+ /**
947
+ * <p>Safety limits that bound what is captured, including hit counts, string length, collection depth, and stack trace size.</p>
948
+ * @public
949
+ */
950
+ CaptureLimits: CaptureLimitsConfig | undefined;
951
+ }
952
+ /**
953
+ * <p>A union that defines what data to capture when the instrumentation point is hit. Specify <code>CodeCapture</code> for code-level capture settings.</p>
954
+ * @public
955
+ */
956
+ export type CaptureConfiguration = CaptureConfiguration.CodeCaptureMember | CaptureConfiguration.$UnknownMember;
957
+ /**
958
+ * @public
959
+ */
960
+ export declare namespace CaptureConfiguration {
961
+ /**
962
+ * <p>Capture settings for code-level instrumentation, including arguments, return values, stack traces, local variables, and safety limits.</p>
963
+ * @public
964
+ */
965
+ interface CodeCaptureMember {
966
+ CodeCapture: CodeCaptureConfiguration;
967
+ $unknown?: never;
968
+ }
969
+ /**
970
+ * @public
971
+ */
972
+ interface $UnknownMember {
973
+ CodeCapture?: never;
974
+ $unknown: [string, any];
975
+ }
976
+ /**
977
+ * @deprecated unused in schema-serde mode.
978
+ *
979
+ */
980
+ interface Visitor<T> {
981
+ CodeCapture: (value: CodeCaptureConfiguration) => T;
982
+ _: (name: string, value: any) => T;
983
+ }
984
+ }
985
+ /**
986
+ * <p>Identifies a code location to instrument, including the programming language, code unit, class, method, file path, and optional line number.</p>
987
+ * @public
988
+ */
989
+ export interface CodeLocation {
990
+ /**
991
+ * <p>The programming language for this instrumentation point, such as Java, Python, or JavaScript.</p>
992
+ * @public
993
+ */
994
+ Language: ProgrammingLanguage | undefined;
995
+ /**
996
+ * <p>The package, module, or namespace that contains the target code, for example <code>com.amazon.payment</code> or <code>payment_service</code>.</p>
997
+ * @public
998
+ */
999
+ CodeUnit?: string | undefined;
1000
+ /**
1001
+ * <p>The class or type name that contains the method. This is required for Java and optional for Python module-level functions.</p>
1002
+ * @public
1003
+ */
1004
+ ClassName?: string | undefined;
1005
+ /**
1006
+ * <p>The method or function name to instrument, such as <code>validateCreditCard</code> or <code>__init__</code>.</p>
1007
+ * @public
1008
+ */
1009
+ MethodName?: string | undefined;
1010
+ /**
1011
+ * <p>The source file path relative to the project or source root, such as <code>src/payment/PaymentProcessor.java</code> or <code>src/payment/PaymentProcessor.py</code>.</p>
1012
+ * @public
1013
+ */
1014
+ FilePath: string | undefined;
1015
+ /**
1016
+ * <p>The line number to instrument. Provide this to disambiguate overloaded methods and to target a specific line when needed.</p>
1017
+ * @public
1018
+ */
1019
+ LineNumber?: number | undefined;
1020
+ }
1021
+ /**
1022
+ * <p>A union that identifies the location to instrument. Specify a <code>CodeLocation</code> for code-level instrumentation.</p>
1023
+ * @public
1024
+ */
1025
+ export type Location = Location.CodeLocationMember | Location.$UnknownMember;
1026
+ /**
1027
+ * @public
1028
+ */
1029
+ export declare namespace Location {
1030
+ /**
1031
+ * <p>A code location for code-level instrumentation, including language, code unit, class, method, file path, and optional line number.</p>
1032
+ * @public
1033
+ */
1034
+ interface CodeLocationMember {
1035
+ CodeLocation: CodeLocation;
1036
+ $unknown?: never;
1037
+ }
1038
+ /**
1039
+ * @public
1040
+ */
1041
+ interface $UnknownMember {
1042
+ CodeLocation?: never;
1043
+ $unknown: [string, any];
1044
+ }
1045
+ /**
1046
+ * @deprecated unused in schema-serde mode.
1047
+ *
1048
+ */
1049
+ interface Visitor<T> {
1050
+ CodeLocation: (value: CodeLocation) => T;
1051
+ _: (name: string, value: any) => T;
1052
+ }
1053
+ }
1054
+ /**
1055
+ * <p>A key-value pair associated with a resource. Tags can help you organize and categorize your resources.</p>
1056
+ * @public
1057
+ */
1058
+ export interface Tag {
1059
+ /**
1060
+ * <p>A string that you can use to assign a value. The combination of tag keys and values can help you organize and categorize your resources.</p>
1061
+ * @public
1062
+ */
1063
+ Key: string | undefined;
1064
+ /**
1065
+ * <p>The value for the specified tag key.</p>
1066
+ * @public
1067
+ */
1068
+ Value: string | undefined;
1069
+ }
1070
+ /**
1071
+ * @public
1072
+ */
1073
+ export interface CreateInstrumentationConfigurationRequest {
1074
+ /**
1075
+ * Type of instrumentation: BREAKPOINT (temporary) or PROBE (permanent)
1076
+ * @public
1077
+ */
1078
+ InstrumentationType: InstrumentationType | undefined;
1079
+ /**
1080
+ * <p>The name of the service to instrument. This should match the <code>service.name</code> resource attribute reported by the application.</p>
1081
+ * @public
1082
+ */
1083
+ Service: string | undefined;
1084
+ /**
1085
+ * <p>The environment that the service is running in, such as <code>eks:cluster-prod/namespace</code> or <code>ec2:production</code>.</p>
1086
+ * @public
1087
+ */
1088
+ Environment: string | undefined;
1089
+ /**
1090
+ * <p>The telemetry signal type to emit for this instrumentation. The supported value is <code>SNAPSHOT</code>.</p>
1091
+ * @public
1092
+ */
1093
+ SignalType: DynamicInstrumentationSignalType | undefined;
1094
+ /**
1095
+ * <p>The location where instrumentation should be applied. Specify a <code>CodeLocation</code> for code-level instrumentation.</p>
1096
+ * @public
1097
+ */
1098
+ Location: Location | undefined;
1099
+ /**
1100
+ * <p>An optional short description (up to 50 characters) that explains the purpose of this instrumentation.</p>
1101
+ * @public
1102
+ */
1103
+ Description?: string | undefined;
1104
+ /**
1105
+ * For BREAKPOINT: optional, defaults to 24 hours, must be between 5 min and 24 hours.
1106
+ * For PROBE: not supported. PROBE configurations are permanent and persist until explicitly deleted.
1107
+ * @public
1108
+ */
1109
+ ExpiresAt?: Date | undefined;
1110
+ /**
1111
+ * <p>Client-side filters that target specific instances. Each object in the array is AND-matched on its keys, and multiple objects are OR-matched to decide where to apply the instrumentation.</p>
1112
+ * @public
1113
+ */
1114
+ AttributeFilters?: Record<string, string>[] | undefined;
1115
+ /**
1116
+ * <p>Specifies what to capture when the instrumentation point is hit. Specify <code>CodeCapture</code> for code-level capture settings.</p>
1117
+ * @public
1118
+ */
1119
+ CaptureConfiguration: CaptureConfiguration | undefined;
1120
+ /**
1121
+ * <p>An optional list of key-value pairs to associate with the instrumentation configuration. Tags can help you organize and categorize your resources.</p>
1122
+ * @public
1123
+ */
1124
+ Tags?: Tag[] | undefined;
1125
+ }
1126
+ /**
1127
+ * @public
1128
+ */
1129
+ export interface CreateInstrumentationConfigurationResponse {
1130
+ /**
1131
+ * <p>The type of instrumentation that was created, echoed from the request.</p>
1132
+ * @public
1133
+ */
1134
+ InstrumentationType: InstrumentationType | undefined;
1135
+ /**
1136
+ * <p>The service name for the instrumentation configuration, echoed from the request.</p>
1137
+ * @public
1138
+ */
1139
+ Service: string | undefined;
1140
+ /**
1141
+ * <p>The environment for the instrumentation configuration, echoed from the request.</p>
1142
+ * @public
1143
+ */
1144
+ Environment: string | undefined;
1145
+ /**
1146
+ * <p>The telemetry signal type for the instrumentation configuration, echoed from the request.</p>
1147
+ * @public
1148
+ */
1149
+ SignalType: DynamicInstrumentationSignalType | undefined;
1150
+ /**
1151
+ * <p>The location where instrumentation is applied, echoed from the request.</p>
1152
+ * @public
1153
+ */
1154
+ Location: Location | undefined;
1155
+ /**
1156
+ * <p>A stable hash computed from the location that uniquely identifies this instrumentation point within the service, environment, and signal type.</p>
1157
+ * @public
1158
+ */
1159
+ LocationHash: string | undefined;
1160
+ /**
1161
+ * <p>The optional description that was stored with the instrumentation configuration.</p>
1162
+ * @public
1163
+ */
1164
+ Description?: string | undefined;
1165
+ /**
1166
+ * <p>The timestamp after which this configuration is no longer served to clients. Present only for <code>BREAKPOINT</code> configurations; <code>PROBE</code> configurations do not expire.</p>
1167
+ * @public
1168
+ */
1169
+ ExpiresAt?: Date | undefined;
1170
+ /**
1171
+ * <p>The attribute filters returned with the configuration so SDKs can perform client-side targeting.</p>
1172
+ * @public
1173
+ */
1174
+ AttributeFilters?: Record<string, string>[] | undefined;
1175
+ /**
1176
+ * <p>The capture settings that were stored for this instrumentation configuration.</p>
1177
+ * @public
1178
+ */
1179
+ CaptureConfiguration: CaptureConfiguration | undefined;
1180
+ /**
1181
+ * <p>The server-generated creation timestamp for this instrumentation configuration.</p>
1182
+ * @public
1183
+ */
1184
+ CreatedAt: Date | undefined;
1185
+ /**
1186
+ * ARN for the created instrumentation configuration
1187
+ * @public
1188
+ */
1189
+ ARN: string | undefined;
1190
+ }
1191
+ /**
1192
+ * @public
1193
+ */
1194
+ export interface DeleteGroupingConfigurationOutput {
1195
+ }
1196
+ /**
1197
+ * Union type for identifying an instrumentation configuration by code location or locationHash.
1198
+ * Used in Get/Delete/GetStatus operations to allow flexible identification.
1199
+ * @public
1200
+ */
1201
+ export type LocationIdentifier = LocationIdentifier.CodeLocationMember | LocationIdentifier.LocationHashMember | LocationIdentifier.$UnknownMember;
1202
+ /**
1203
+ * @public
1204
+ */
1205
+ export declare namespace LocationIdentifier {
1206
+ /**
1207
+ * The full code location specification (will be hashed internally)
1208
+ * @public
1209
+ */
1210
+ interface CodeLocationMember {
1211
+ CodeLocation: CodeLocation;
1212
+ LocationHash?: never;
1213
+ $unknown?: never;
1214
+ }
1215
+ /**
1216
+ * The pre-computed location hash (16-character hex string)
1217
+ * @public
1218
+ */
1219
+ interface LocationHashMember {
1220
+ CodeLocation?: never;
1221
+ LocationHash: string;
1222
+ $unknown?: never;
1223
+ }
1224
+ /**
1225
+ * @public
1226
+ */
1227
+ interface $UnknownMember {
1228
+ CodeLocation?: never;
1229
+ LocationHash?: never;
1230
+ $unknown: [string, any];
1231
+ }
1232
+ /**
1233
+ * @deprecated unused in schema-serde mode.
1234
+ *
1235
+ */
1236
+ interface Visitor<T> {
1237
+ CodeLocation: (value: CodeLocation) => T;
1238
+ LocationHash: (value: string) => T;
1239
+ _: (name: string, value: any) => T;
1240
+ }
1241
+ }
1242
+ /**
1243
+ * @public
1244
+ */
1245
+ export interface DeleteInstrumentationConfigurationRequest {
1246
+ /**
1247
+ * Type of instrumentation configuration (BREAKPOINT or PROBE).
1248
+ * Required to identify the configuration to delete.
1249
+ * @public
1250
+ */
1251
+ InstrumentationType: InstrumentationType | undefined;
1252
+ /**
1253
+ * Service name for the instrumentation configuration.
1254
+ * @public
1255
+ */
1256
+ Service: string | undefined;
1257
+ /**
1258
+ * Environment name for the instrumentation configuration.
1259
+ * @public
1260
+ */
1261
+ Environment: string | undefined;
1262
+ /**
1263
+ * Signal type for the instrumentation configuration.
1264
+ * @public
1265
+ */
1266
+ SignalType: DynamicInstrumentationSignalType | undefined;
1267
+ /**
1268
+ * Location identifier - either full code location or a pre-computed hash.
1269
+ * @public
1270
+ */
1271
+ LocationIdentifier: LocationIdentifier | undefined;
1272
+ }
1273
+ /**
1274
+ * @public
1275
+ */
1276
+ export interface DeleteInstrumentationConfigurationResponse {
1277
+ /**
1278
+ * <p>The result of the delete request. The value is <code>DELETED</code> when the configuration has been removed.</p>
1279
+ * @public
1280
+ */
1281
+ DeletionStatus: DynamicInstrumentationDeletionStatus | undefined;
1282
+ }
1283
+ /**
1284
+ * @public
1285
+ */
1286
+ export interface GetInstrumentationConfigurationRequest {
1287
+ /**
1288
+ * Type of instrumentation configuration (BREAKPOINT or PROBE).
1289
+ * Required to identify the configuration to retrieve.
1290
+ * @public
1291
+ */
1292
+ InstrumentationType: InstrumentationType | undefined;
1293
+ /**
1294
+ * Service name for the instrumentation configuration.
1295
+ * @public
1296
+ */
1297
+ Service: string | undefined;
1298
+ /**
1299
+ * Environment name for the instrumentation configuration.
1300
+ * @public
1301
+ */
1302
+ Environment: string | undefined;
1303
+ /**
1304
+ * Signal type for the instrumentation configuration.
1305
+ * @public
1306
+ */
1307
+ SignalType: DynamicInstrumentationSignalType | undefined;
1308
+ /**
1309
+ * Location identifier - either full code location or a pre-computed hash.
1310
+ * @public
1311
+ */
1312
+ LocationIdentifier: LocationIdentifier | undefined;
1313
+ }
1314
+ /**
1315
+ * <p>The full instrumentation configuration, including the instrumentation type, service, environment, signal type, location details, stable location hash, capture settings, filters, expiration, creation time, and ARN.</p>
1316
+ * @public
1317
+ */
1318
+ export interface InstrumentationConfiguration {
1319
+ /**
1320
+ * <p>The type of instrumentation for this configuration.</p>
1321
+ * @public
1322
+ */
1323
+ InstrumentationType: InstrumentationType | undefined;
1324
+ /**
1325
+ * <p>The service that this instrumentation configuration targets.</p>
1326
+ * @public
1327
+ */
1328
+ Service: string | undefined;
1329
+ /**
1330
+ * <p>The environment where the service is running.</p>
1331
+ * @public
1332
+ */
1333
+ Environment: string | undefined;
1334
+ /**
1335
+ * <p>The telemetry signal type for this instrumentation configuration.</p>
1336
+ * @public
1337
+ */
1338
+ SignalType: DynamicInstrumentationSignalType | undefined;
1339
+ /**
1340
+ * <p>The location where this instrumentation is applied.</p>
1341
+ * @public
1342
+ */
1343
+ Location: Location | undefined;
1344
+ /**
1345
+ * <p>The stable hash derived from the location that uniquely identifies this instrumentation point within the service and environment.</p>
1346
+ * @public
1347
+ */
1348
+ LocationHash: string | undefined;
1349
+ /**
1350
+ * <p>An optional short description of the instrumentation configuration.</p>
1351
+ * @public
1352
+ */
1353
+ Description?: string | undefined;
1354
+ /**
1355
+ * <p>The timestamp when this configuration expires.</p>
1356
+ * @public
1357
+ */
1358
+ ExpiresAt?: Date | undefined;
1359
+ /**
1360
+ * <p>Client-side filters that determine which instances apply this instrumentation.</p>
1361
+ * @public
1362
+ */
1363
+ AttributeFilters?: Record<string, string>[] | undefined;
1364
+ /**
1365
+ * <p>The capture settings for this instrumentation configuration.</p>
593
1366
  * @public
594
1367
  */
595
- Timestamp: Date | undefined;
1368
+ CaptureConfiguration: CaptureConfiguration | undefined;
596
1369
  /**
597
- * <p>An array of structures, where each structure is one budget report.</p>
1370
+ * <p>The timestamp when this instrumentation configuration was created.</p>
598
1371
  * @public
599
1372
  */
600
- Reports: ServiceLevelObjectiveBudgetReport[] | undefined;
1373
+ CreatedAt: Date | undefined;
601
1374
  /**
602
- * <p>An array of structures, where each structure includes an error indicating that one of the requests in the array was not valid.</p>
1375
+ * ARN for the instrumentation configuration
603
1376
  * @public
604
1377
  */
605
- Errors: ServiceLevelObjectiveBudgetReportError[] | undefined;
1378
+ ARN: string | undefined;
606
1379
  }
607
1380
  /**
608
- * <p>The recurrence rule for the SLO time window exclusion .</p>
609
1381
  * @public
610
1382
  */
611
- export interface RecurrenceRule {
1383
+ export interface GetInstrumentationConfigurationResponse {
612
1384
  /**
613
- * <p>A cron or rate expression that specifies the schedule for the exclusion window.</p>
1385
+ * <p>The complete instrumentation configuration, including its location hash, capture settings, filters, expiration, and creation time.</p>
614
1386
  * @public
615
1387
  */
616
- Expression: string | undefined;
1388
+ Configuration: InstrumentationConfiguration | undefined;
617
1389
  }
618
1390
  /**
619
- * <p>The object that defines the time length of an exclusion window.</p>
620
1391
  * @public
621
1392
  */
622
- export interface Window {
1393
+ export interface GetInstrumentationConfigurationStatusRequest {
623
1394
  /**
624
- * <p>The unit of time for the exclusion window duration. Valid values: MINUTE, HOUR, DAY, MONTH.</p>
1395
+ * Type of instrumentation configuration (BREAKPOINT or PROBE).
1396
+ * Required to identify the configuration to retrieve.
625
1397
  * @public
626
1398
  */
627
- DurationUnit: DurationUnit | undefined;
1399
+ InstrumentationType: InstrumentationType | undefined;
628
1400
  /**
629
- * <p>The number of time units for the exclusion window length.</p>
1401
+ * Service name for the instrumentation configuration.
630
1402
  * @public
631
1403
  */
632
- Duration: number | undefined;
633
- }
634
- /**
635
- * <p>The core SLO time window exclusion object that includes Window, StartTime, RecurrenceRule, and Reason.</p>
636
- * @public
637
- */
638
- export interface ExclusionWindow {
1404
+ Service: string | undefined;
639
1405
  /**
640
- * <p>The SLO time window exclusion .</p>
1406
+ * Environment name for the instrumentation configuration.
641
1407
  * @public
642
1408
  */
643
- Window: Window | undefined;
1409
+ Environment: string | undefined;
644
1410
  /**
645
- * <p>The start of the SLO time window exclusion. Defaults to current time if not specified.</p>
1411
+ * Signal type for the instrumentation configuration.
1412
+ * @public
1413
+ */
1414
+ SignalType: DynamicInstrumentationSignalType | undefined;
1415
+ /**
1416
+ * Location identifier - either full code location or a pre-computed hash.
1417
+ * @public
1418
+ */
1419
+ LocationIdentifier: LocationIdentifier | undefined;
1420
+ /**
1421
+ * <p>The single status to query for. If omitted, only <code>ACTIVE</code> status events are returned.</p>
1422
+ * @public
1423
+ */
1424
+ Status?: InstrumentationConfigurationStatus | undefined;
1425
+ /**
1426
+ * <p>The start of the time range to retrieve status events for. <code>StartTime</code> and <code>EndTime</code> must both be provided together or both be omitted. When both are omitted, the time range defaults to the last hour.</p>
646
1427
  * @public
647
1428
  */
648
1429
  StartTime?: Date | undefined;
649
1430
  /**
650
- * <p>The recurrence rule for the SLO time window exclusion. Supports both cron and rate expressions.</p>
1431
+ * <p>The end of the time range to retrieve status events for. <code>StartTime</code> and <code>EndTime</code> must both be provided together or both be omitted. When both are omitted, the time range defaults to the last hour.</p>
651
1432
  * @public
652
1433
  */
653
- RecurrenceRule?: RecurrenceRule | undefined;
1434
+ EndTime?: Date | undefined;
654
1435
  /**
655
- * <p>A description explaining why this time period should be excluded from SLO calculations.</p>
1436
+ * <p>The maximum number of status events to return in one call. The default is 60.</p>
656
1437
  * @public
657
1438
  */
658
- Reason?: string | undefined;
1439
+ MaxResults?: number | undefined;
1440
+ /**
1441
+ * <p>Use the token returned by a previous call to retrieve the next page of status events.</p>
1442
+ * @public
1443
+ */
1444
+ NextToken?: string | undefined;
659
1445
  }
660
1446
  /**
1447
+ * <p>A status event for an instrumentation configuration returned by <code>GetInstrumentationConfigurationStatus</code>. Events include the timestamp and, for errors, an error cause.</p>
661
1448
  * @public
662
1449
  */
663
- export interface BatchUpdateExclusionWindowsInput {
664
- /**
665
- * <p>The list of SLO IDs to add or remove exclusion windows from.</p>
666
- * @public
667
- */
668
- SloIds: string[] | undefined;
1450
+ export interface InstrumentationStatusEvent {
669
1451
  /**
670
- * <p>A list of exclusion windows to add to the specified SLOs. You can add up to 10 exclusion windows per SLO.</p>
1452
+ * <p>The time when the status was reported, rounded to the nearest minute.</p>
671
1453
  * @public
672
1454
  */
673
- AddExclusionWindows?: ExclusionWindow[] | undefined;
1455
+ Time: Date | undefined;
674
1456
  /**
675
- * <p>A list of exclusion windows to remove from the specified SLOs. The window configuration must match an existing exclusion window.</p>
1457
+ * <p>The error cause when the status is <code>ERROR</code>.</p>
676
1458
  * @public
677
1459
  */
678
- RemoveExclusionWindows?: ExclusionWindow[] | undefined;
1460
+ ErrorCause?: InstrumentationErrorCause | undefined;
679
1461
  }
680
1462
  /**
681
- * <p>An array of structures, where each structure includes an error indicating that one of the requests in the array was not valid.</p>
682
1463
  * @public
683
1464
  */
684
- export interface BatchUpdateExclusionWindowsError {
1465
+ export interface GetInstrumentationConfigurationStatusResponse {
685
1466
  /**
686
- * <p>The SLO ID in the error.</p>
1467
+ * <p>The service name echoed from the request.</p>
687
1468
  * @public
688
1469
  */
689
- SloId: string | undefined;
1470
+ Service: string | undefined;
690
1471
  /**
691
- * <p>The error code.</p>
1472
+ * <p>The environment echoed from the request.</p>
692
1473
  * @public
693
1474
  */
694
- ErrorCode: string | undefined;
1475
+ Environment: string | undefined;
695
1476
  /**
696
- * <p>The error message.</p>
1477
+ * <p>The telemetry signal type echoed from the request.</p>
697
1478
  * @public
698
1479
  */
699
- ErrorMessage: string | undefined;
700
- }
701
- /**
702
- * @public
703
- */
704
- export interface BatchUpdateExclusionWindowsOutput {
1480
+ SignalType: DynamicInstrumentationSignalType | undefined;
705
1481
  /**
706
- * <p>The list of SLO IDs that were successfully processed.</p>
1482
+ * <p>The code location echoed from the request.</p>
707
1483
  * @public
708
1484
  */
709
- SloIds: string[] | undefined;
1485
+ Location: Location | undefined;
710
1486
  /**
711
- * <p>A list of errors that occurred while processing the request.</p>
1487
+ * <p>The status that was queried. If not specified in the request, this is <code>ACTIVE</code>.</p>
712
1488
  * @public
713
1489
  */
714
- Errors: BatchUpdateExclusionWindowsError[] | undefined;
715
- }
716
- /**
717
- * @public
718
- */
719
- export interface DeleteGroupingConfigurationOutput {
1490
+ Status: InstrumentationConfigurationStatus | undefined;
1491
+ /**
1492
+ * <p>The list of status events within the requested time window, sorted with the most recent first. Error events include an error cause.</p>
1493
+ * @public
1494
+ */
1495
+ Events: InstrumentationStatusEvent[] | undefined;
1496
+ /**
1497
+ * <p>Pagination token to continue retrieving status events.</p>
1498
+ * @public
1499
+ */
1500
+ NextToken?: string | undefined;
720
1501
  }
721
1502
  /**
722
1503
  * @public
@@ -1409,6 +2190,138 @@ export interface ListGroupingAttributeDefinitionsOutput {
1409
2190
  */
1410
2191
  NextToken?: string | undefined;
1411
2192
  }
2193
+ /**
2194
+ * <p>An instrumentation configuration that omits service and environment because they are provided at a higher level, such as in a list response.</p>
2195
+ * @public
2196
+ */
2197
+ export interface InstrumentationConfigurationWithoutServiceEnv {
2198
+ /**
2199
+ * <p>The type of instrumentation for this configuration.</p>
2200
+ * @public
2201
+ */
2202
+ InstrumentationType: InstrumentationType | undefined;
2203
+ /**
2204
+ * <p>The telemetry signal type for this instrumentation configuration.</p>
2205
+ * @public
2206
+ */
2207
+ SignalType: DynamicInstrumentationSignalType | undefined;
2208
+ /**
2209
+ * <p>The location where this instrumentation is applied.</p>
2210
+ * @public
2211
+ */
2212
+ Location: Location | undefined;
2213
+ /**
2214
+ * <p>The stable hash derived from the location that identifies this instrumentation point.</p>
2215
+ * @public
2216
+ */
2217
+ LocationHash: string | undefined;
2218
+ /**
2219
+ * <p>An optional short description of the instrumentation configuration.</p>
2220
+ * @public
2221
+ */
2222
+ Description?: string | undefined;
2223
+ /**
2224
+ * <p>The timestamp when this configuration expires.</p>
2225
+ * @public
2226
+ */
2227
+ ExpiresAt?: Date | undefined;
2228
+ /**
2229
+ * <p>Client-side filters that determine which instances apply this instrumentation.</p>
2230
+ * @public
2231
+ */
2232
+ AttributeFilters?: Record<string, string>[] | undefined;
2233
+ /**
2234
+ * <p>The capture settings for this instrumentation configuration.</p>
2235
+ * @public
2236
+ */
2237
+ CaptureConfiguration: CaptureConfiguration | undefined;
2238
+ /**
2239
+ * <p>The timestamp when this instrumentation configuration was created.</p>
2240
+ * @public
2241
+ */
2242
+ CreatedAt: Date | undefined;
2243
+ /**
2244
+ * ARN for the instrumentation configuration
2245
+ * @public
2246
+ */
2247
+ ARN: string | undefined;
2248
+ }
2249
+ /**
2250
+ * @public
2251
+ */
2252
+ export interface InstrumentationConfigurationsPage {
2253
+ /**
2254
+ * <p>The service name associated with the returned configurations.</p>
2255
+ * @public
2256
+ */
2257
+ Service: string | undefined;
2258
+ /**
2259
+ * <p>The environment associated with the returned configurations.</p>
2260
+ * @public
2261
+ */
2262
+ Environment: string | undefined;
2263
+ /**
2264
+ * <p>Indicates whether there are configuration changes since the provided <code>SyncedAt</code> timestamp.</p>
2265
+ * @public
2266
+ */
2267
+ Changed: boolean | undefined;
2268
+ /**
2269
+ * <p>The current set of active instrumentation configurations for the service and environment. Items omit service and environment because they are provided in the request.</p>
2270
+ * @public
2271
+ */
2272
+ LatestConfigurations?: InstrumentationConfigurationWithoutServiceEnv[] | undefined;
2273
+ /**
2274
+ * <p>The server timestamp to supply on the next sync call.</p>
2275
+ * @public
2276
+ */
2277
+ SyncedAt: Date | undefined;
2278
+ /**
2279
+ * <p>The suggested number of seconds to wait before the next sync request. This is at least 60 seconds to prevent excessive polling.</p>
2280
+ * @public
2281
+ */
2282
+ SyncInterval: number | undefined;
2283
+ /**
2284
+ * <p>Pagination token to continue listing configurations when more results are available.</p>
2285
+ * @public
2286
+ */
2287
+ NextToken?: string | undefined;
2288
+ }
2289
+ /**
2290
+ * @public
2291
+ */
2292
+ export interface ListInstrumentationConfigurationsRequest {
2293
+ /**
2294
+ * <p>The name of the service to retrieve instrumentation configurations for.</p>
2295
+ * @public
2296
+ */
2297
+ Service: string | undefined;
2298
+ /**
2299
+ * <p>The environment that the service is running in.</p>
2300
+ * @public
2301
+ */
2302
+ Environment: string | undefined;
2303
+ /**
2304
+ * Type of instrumentation configuration (BREAKPOINT or PROBE).
2305
+ * Required to determine which backing store to query.
2306
+ * @public
2307
+ */
2308
+ InstrumentationType: InstrumentationType | undefined;
2309
+ /**
2310
+ * <p>The timestamp from the last successful sync. When provided, the response returns <code>Changed</code> as <code>false</code> if nothing is new since this time, or returns the latest configurations when changes exist.</p>
2311
+ * @public
2312
+ */
2313
+ SyncedAt?: Date | undefined;
2314
+ /**
2315
+ * <p>The maximum number of configurations to return in one call. The default is 50 and the maximum is 100.</p>
2316
+ * @public
2317
+ */
2318
+ MaxResults?: number | undefined;
2319
+ /**
2320
+ * <p>Use the token returned by a previous call to retrieve the next page of configurations.</p>
2321
+ * @public
2322
+ */
2323
+ NextToken?: string | undefined;
2324
+ }
1412
2325
  /**
1413
2326
  * @public
1414
2327
  */
@@ -1875,22 +2788,6 @@ export interface ListTagsForResourceRequest {
1875
2788
  */
1876
2789
  ResourceArn: string | undefined;
1877
2790
  }
1878
- /**
1879
- * <p>A key-value pair associated with a resource. Tags can help you organize and categorize your resources.</p>
1880
- * @public
1881
- */
1882
- export interface Tag {
1883
- /**
1884
- * <p>A string that you can use to assign a value. The combination of tag keys and values can help you organize and categorize your resources.</p>
1885
- * @public
1886
- */
1887
- Key: string | undefined;
1888
- /**
1889
- * <p>The value for the specified tag key.</p>
1890
- * @public
1891
- */
1892
- Value: string | undefined;
1893
- }
1894
2791
  /**
1895
2792
  * @public
1896
2793
  */
@@ -1937,6 +2834,118 @@ export interface PutGroupingConfigurationOutput {
1937
2834
  */
1938
2835
  GroupingConfiguration: GroupingConfiguration | undefined;
1939
2836
  }
2837
+ /**
2838
+ * <p>The status of a single instrumentation configuration reported by an SDK instance.</p>
2839
+ * @public
2840
+ */
2841
+ export interface InstrumentationConfigurationStatusReport {
2842
+ /**
2843
+ * <p>The type of instrumentation configuration being reported.</p>
2844
+ * @public
2845
+ */
2846
+ InstrumentationType: InstrumentationType | undefined;
2847
+ /**
2848
+ * <p>The telemetry signal type for this instrumentation configuration.</p>
2849
+ * @public
2850
+ */
2851
+ SignalType: DynamicInstrumentationSignalType | undefined;
2852
+ /**
2853
+ * <p>The stable hash of the instrumentation location that identifies the configuration being reported.</p>
2854
+ * @public
2855
+ */
2856
+ LocationHash: string | undefined;
2857
+ /**
2858
+ * <p>The status of the instrumentation configuration: <code>READY</code>, <code>ERROR</code>, <code>ACTIVE</code>, or <code>DISABLED</code>.</p>
2859
+ * @public
2860
+ */
2861
+ Status: InstrumentationConfigurationStatus | undefined;
2862
+ /**
2863
+ * <p>The timestamp when the status event occurred.</p>
2864
+ * @public
2865
+ */
2866
+ Time: Date | undefined;
2867
+ /**
2868
+ * <p>The error cause when the status is <code>ERROR</code>, such as the file or method not being found.</p>
2869
+ * @public
2870
+ */
2871
+ ErrorCause?: InstrumentationErrorCause | undefined;
2872
+ }
2873
+ /**
2874
+ * @public
2875
+ */
2876
+ export interface ReportInstrumentationConfigurationStatusRequest {
2877
+ /**
2878
+ * <p>The service that the reported configurations belong to.</p>
2879
+ * @public
2880
+ */
2881
+ Service: string | undefined;
2882
+ /**
2883
+ * <p>The environment that the service is running in.</p>
2884
+ * @public
2885
+ */
2886
+ Environment: string | undefined;
2887
+ /**
2888
+ * <p>An array of configuration status reports (up to 100) that include the instrumentation type, signal type, location hash, status, timestamp, and optional error cause.</p>
2889
+ * @public
2890
+ */
2891
+ Configurations: InstrumentationConfigurationStatusReport[] | undefined;
2892
+ }
2893
+ /**
2894
+ * <p>A status event that could not be processed by the service.</p>
2895
+ * @public
2896
+ */
2897
+ export interface UnprocessedStatusEvent {
2898
+ /**
2899
+ * <p>The type of instrumentation configuration for the unprocessed status event.</p>
2900
+ * @public
2901
+ */
2902
+ InstrumentationType: InstrumentationType | undefined;
2903
+ /**
2904
+ * <p>The telemetry signal type for the unprocessed status event.</p>
2905
+ * @public
2906
+ */
2907
+ SignalType: DynamicInstrumentationSignalType | undefined;
2908
+ /**
2909
+ * <p>The stable hash of the instrumentation location for the unprocessed event.</p>
2910
+ * @public
2911
+ */
2912
+ LocationHash: string | undefined;
2913
+ /**
2914
+ * <p>The status that failed to be processed.</p>
2915
+ * @public
2916
+ */
2917
+ Status: InstrumentationConfigurationStatus | undefined;
2918
+ /**
2919
+ * <p>The timestamp of the status event that failed to be processed.</p>
2920
+ * @public
2921
+ */
2922
+ Time: Date | undefined;
2923
+ /**
2924
+ * <p>The reason why this status event could not be processed, such as throttling or validation errors.</p>
2925
+ * @public
2926
+ */
2927
+ FailedReason: UnprocessedStatusEventFailureReason | undefined;
2928
+ }
2929
+ /**
2930
+ * @public
2931
+ */
2932
+ export interface ReportInstrumentationConfigurationStatusResponse {
2933
+ /**
2934
+ * <p>The service name echoed from the request.</p>
2935
+ * @public
2936
+ */
2937
+ Service: string | undefined;
2938
+ /**
2939
+ * <p>The environment echoed from the request.</p>
2940
+ * @public
2941
+ */
2942
+ Environment: string | undefined;
2943
+ /**
2944
+ * <p>Status events that failed to be processed. Each entry includes the configuration identifiers, status, timestamp, and a reason for the failure.</p>
2945
+ * @public
2946
+ */
2947
+ UnprocessedStatusEvents: UnprocessedStatusEvent[] | undefined;
2948
+ }
1940
2949
  /**
1941
2950
  * <p>This object defines the length of the look-back window used to calculate one burn rate metric for this SLO. The burn rate measures how fast the service is consuming the error budget, relative to the attainment goal of the SLO. A burn rate of exactly 1 indicates that the SLO goal will be met exactly.</p> <p>For example, if you specify 60 as the number of minutes in the look-back window, the burn rate is calculated as the following:</p> <p> <i>burn rate = error rate over the look-back window / (100% - attainment goal percentage)</i> </p> <p>For more information about burn rates, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-ServiceLevelObjectives.html#CloudWatch-ServiceLevelObjectives-burn">Calculate burn rates</a>.</p>
1942
2951
  * @public