1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package types
4
5import (
6	"time"
7)
8
9// Describes a standalone resource or similarly grouped resources that the
10// application is made up of.
11type ApplicationComponent struct {
12
13	// The name of the component.
14	ComponentName *string
15
16	// If logging is supported for the resource type, indicates whether the component
17	// has configured logs to be monitored.
18	ComponentRemarks *string
19
20	// Workloads detected in the application component.
21	DetectedWorkload map[string]map[string]string
22
23	// Indicates whether the application component is monitored.
24	Monitor *bool
25
26	// The operating system of the component.
27	OsType OsType
28
29	// The resource type. Supported resource types include EC2 instances, Auto Scaling
30	// group, Classic ELB, Application ELB, and SQS Queue.
31	ResourceType *string
32
33	// The stack tier of the application component.
34	Tier Tier
35}
36
37// Describes the status of the application.
38type ApplicationInfo struct {
39
40	// Indicates whether Application Insights can listen to CloudWatch events for the
41	// application resources, such as instance terminated, failed deployment, and
42	// others.
43	CWEMonitorEnabled *bool
44
45	// The lifecycle of the application.
46	LifeCycle *string
47
48	// Indicates whether Application Insights will create opsItems for any problem
49	// detected by Application Insights for an application.
50	OpsCenterEnabled *bool
51
52	// The SNS topic provided to Application Insights that is associated to the created
53	// opsItems to receive SNS notifications for opsItem updates.
54	OpsItemSNSTopicArn *string
55
56	// The issues on the user side that block Application Insights from successfully
57	// monitoring an application. Example remarks include:
58	//
59	// * “Configuring application,
60	// detected 1 Errors, 3 Warnings”
61	//
62	// * “Configuring application, detected 1
63	// Unconfigured Components”
64	Remarks *string
65
66	// The name of the resource group used for the application.
67	ResourceGroupName *string
68}
69
70// The event information.
71type ConfigurationEvent struct {
72
73	// The details of the event in plain text.
74	EventDetail *string
75
76	// The name of the resource Application Insights attempted to configure.
77	EventResourceName *string
78
79	// The resource type that Application Insights attempted to configure, for example,
80	// CLOUDWATCH_ALARM.
81	EventResourceType ConfigurationEventResourceType
82
83	// The status of the configuration update event. Possible values include INFO,
84	// WARN, and ERROR.
85	EventStatus ConfigurationEventStatus
86
87	// The timestamp of the event.
88	EventTime *time.Time
89
90	// The resource monitored by Application Insights.
91	MonitoredResourceARN *string
92}
93
94// An object that defines the log patterns that belongs to a LogPatternSet.
95type LogPattern struct {
96
97	// A regular expression that defines the log pattern. A log pattern can contain as
98	// many as 50 characters, and it cannot be empty. The pattern must be DFA
99	// compatible. Patterns that utilize forward lookahead or backreference
100	// constructions are not supported.
101	Pattern *string
102
103	// The name of the log pattern. A log pattern name can contain as many as 50
104	// characters, and it cannot be empty. The characters can be Unicode letters,
105	// digits, or one of the following symbols: period, dash, underscore.
106	PatternName *string
107
108	// The name of the log pattern. A log pattern name can contain as many as 30
109	// characters, and it cannot be empty. The characters can be Unicode letters,
110	// digits, or one of the following symbols: period, dash, underscore.
111	PatternSetName *string
112
113	// Rank of the log pattern. Must be a value between 1 and 1,000,000. The patterns
114	// are sorted by rank, so we recommend that you set your highest priority patterns
115	// with the lowest rank. A pattern of rank 1 will be the first to get matched to a
116	// log line. A pattern of rank 1,000,000 will be last to get matched. When you
117	// configure custom log patterns from the console, a Low severity pattern
118	// translates to a 750,000 rank. A Medium severity pattern translates to a 500,000
119	// rank. And a High severity pattern translates to a 250,000 rank. Rank values less
120	// than 1 or greater than 1,000,000 are reserved for AWS-provided patterns.
121	Rank int32
122}
123
124// Describes an anomaly or error with the application.
125type Observation struct {
126
127	// The detail type of the CloudWatch Event-based observation, for example, EC2
128	// Instance State-change Notification.
129	CloudWatchEventDetailType *string
130
131	// The ID of the CloudWatch Event-based observation related to the detected
132	// problem.
133	CloudWatchEventId *string
134
135	// The source of the CloudWatch Event.
136	CloudWatchEventSource CloudWatchEventSource
137
138	// The CodeDeploy application to which the deployment belongs.
139	CodeDeployApplication *string
140
141	// The deployment group to which the CodeDeploy deployment belongs.
142	CodeDeployDeploymentGroup *string
143
144	// The deployment ID of the CodeDeploy-based observation related to the detected
145	// problem.
146	CodeDeployDeploymentId *string
147
148	// The instance group to which the CodeDeploy instance belongs.
149	CodeDeployInstanceGroupId *string
150
151	// The status of the CodeDeploy deployment, for example SUCCESS or  FAILURE.
152	CodeDeployState *string
153
154	// The cause of an EBS CloudWatch event.
155	EbsCause *string
156
157	// The type of EBS CloudWatch event, such as createVolume, deleteVolume or
158	// attachVolume.
159	EbsEvent *string
160
161	// The request ID of an EBS CloudWatch event.
162	EbsRequestId *string
163
164	// The result of an EBS CloudWatch event, such as failed or succeeded.
165	EbsResult *string
166
167	// The state of the instance, such as STOPPING or TERMINATING.
168	Ec2State *string
169
170	// The time when the observation ended, in epoch seconds.
171	EndTime *time.Time
172
173	// The Amazon Resource Name (ARN) of the AWS Health Event-based observation.
174	HealthEventArn *string
175
176	// The description of the AWS Health event provided by the service, such as Amazon
177	// EC2.
178	HealthEventDescription *string
179
180	// The category of the AWS Health event, such as issue.
181	HealthEventTypeCategory *string
182
183	// The type of the AWS Health event, for example, AWS_EC2_POWER_CONNECTIVITY_ISSUE.
184	HealthEventTypeCode *string
185
186	// The service to which the AWS Health Event belongs, such as EC2.
187	HealthService *string
188
189	// The ID of the observation type.
190	Id *string
191
192	// The timestamp in the CloudWatch Logs that specifies when the matched line
193	// occurred.
194	LineTime *time.Time
195
196	// The log filter of the observation.
197	LogFilter LogFilter
198
199	// The log group name.
200	LogGroup *string
201
202	// The log text of the observation.
203	LogText *string
204
205	// The name of the observation metric.
206	MetricName *string
207
208	// The namespace of the observation metric.
209	MetricNamespace *string
210
211	// The category of an RDS event.
212	RdsEventCategories *string
213
214	// The message of an RDS event.
215	RdsEventMessage *string
216
217	// The name of the S3 CloudWatch Event-based observation.
218	S3EventName *string
219
220	// The source resource ARN of the observation.
221	SourceARN *string
222
223	// The source type of the observation.
224	SourceType *string
225
226	// The time when the observation was first detected, in epoch seconds.
227	StartTime *time.Time
228
229	// The Amazon Resource Name (ARN) of the step function-based observation.
230	StatesArn *string
231
232	// The Amazon Resource Name (ARN) of the step function execution-based observation.
233	StatesExecutionArn *string
234
235	// The input to the step function-based observation.
236	StatesInput *string
237
238	// The status of the step function-related observation.
239	StatesStatus *string
240
241	// The unit of the source observation metric.
242	Unit *string
243
244	// The value of the source observation metric.
245	Value *float64
246
247	// The X-Ray request error percentage for this node.
248	XRayErrorPercent *int32
249
250	// The X-Ray request fault percentage for this node.
251	XRayFaultPercent *int32
252
253	// The name of the X-Ray node.
254	XRayNodeName *string
255
256	// The type of the X-Ray node.
257	XRayNodeType *string
258
259	// The X-Ray node request average latency for this node.
260	XRayRequestAverageLatency *int64
261
262	// The X-Ray request count for this node.
263	XRayRequestCount *int32
264
265	// The X-Ray request throttle percentage for this node.
266	XRayThrottlePercent *int32
267}
268
269// Describes a problem that is detected by correlating observations.
270type Problem struct {
271
272	// The resource affected by the problem.
273	AffectedResource *string
274
275	// The time when the problem ended, in epoch seconds.
276	EndTime *time.Time
277
278	// Feedback provided by the user about the problem.
279	Feedback map[string]FeedbackValue
280
281	// The ID of the problem.
282	Id *string
283
284	// A detailed analysis of the problem using machine learning.
285	Insights *string
286
287	// The name of the resource group affected by the problem.
288	ResourceGroupName *string
289
290	// A measure of the level of impact of the problem.
291	SeverityLevel SeverityLevel
292
293	// The time when the problem started, in epoch seconds.
294	StartTime *time.Time
295
296	// The status of the problem.
297	Status Status
298
299	// The name of the problem.
300	Title *string
301}
302
303// Describes observations related to the problem.
304type RelatedObservations struct {
305
306	// The list of observations related to the problem.
307	ObservationList []Observation
308}
309
310// An object that defines the tags associated with an application. A tag is a label
311// that you optionally define and associate with an application. Tags can help you
312// categorize and manage resources in different ways, such as by purpose, owner,
313// environment, or other criteria. Each tag consists of a required tag key and an
314// associated tag value, both of which you define. A tag key is a general label
315// that acts as a category for a more specific tag value. A tag value acts as a
316// descriptor within a tag key. A tag key can contain as many as 128 characters. A
317// tag value can contain as many as 256 characters. The characters can be Unicode
318// letters, digits, white space, or one of the following symbols: _ . : / = + -.
319// The following additional restrictions apply to tags:
320//
321// * Tag keys and values are
322// case sensitive.
323//
324// * For each associated resource, each tag key must be unique and
325// it can have only one value.
326//
327// * The aws: prefix is reserved for use by AWS; you
328// can’t use it in any tag keys or values that you define. In addition, you can't
329// edit or remove tag keys or values that use this prefix.
330type Tag struct {
331
332	// One part of a key-value pair that defines a tag. The maximum length of a tag key
333	// is 128 characters. The minimum length is 1 character.
334	//
335	// This member is required.
336	Key *string
337
338	// The optional part of a key-value pair that defines a tag. The maximum length of
339	// a tag value is 256 characters. The minimum length is 0 characters. If you don't
340	// want an application to have a specific tag value, don't specify a value for this
341	// parameter.
342	//
343	// This member is required.
344	Value *string
345}
346