1# coding=utf-8
2# pylint: disable=too-many-lines
3# --------------------------------------------------------------------------
4# Copyright (c) Microsoft Corporation. All rights reserved.
5# Licensed under the MIT License. See License.txt in the project root for license information.
6# Code generated by Microsoft (R) AutoRest Code Generator.
7# Changes may cause incorrect behavior and will be lost if the code is regenerated.
8# --------------------------------------------------------------------------
9
10import datetime
11from typing import Any, Dict, List, Optional, TYPE_CHECKING, Union
12
13from .. import _serialization
14
15if TYPE_CHECKING:
16 # pylint: disable=unused-import,ungrouped-imports
17 from .. import models as _models
18
19
20class AccountInfo(_serialization.Model):
21 """Dynatrace Account Information.
22
23 :ivar account_id: Account Id of the account this environment is linked to.
24 :vartype account_id: str
25 :ivar region_id: Region in which the account is created.
26 :vartype region_id: str
27 """
28
29 _attribute_map = {
30 "account_id": {"key": "accountId", "type": "str"},
31 "region_id": {"key": "regionId", "type": "str"},
32 }
33
34 def __init__(self, *, account_id: Optional[str] = None, region_id: Optional[str] = None, **kwargs: Any) -> None:
35 """
36 :keyword account_id: Account Id of the account this environment is linked to.
37 :paramtype account_id: str
38 :keyword region_id: Region in which the account is created.
39 :paramtype region_id: str
40 """
41 super().__init__(**kwargs)
42 self.account_id = account_id
43 self.region_id = region_id
44
45
46class AppServiceInfo(_serialization.Model):
47 """Details of App Services having Dynatrace OneAgent installed.
48
49 :ivar resource_id: App service resource ID.
50 :vartype resource_id: str
51 :ivar version: Version of the Dynatrace agent installed on the App Service.
52 :vartype version: str
53 :ivar monitoring_type: The monitoring mode of OneAgent. Known values are:
54 "CLOUD_INFRASTRUCTURE" and "FULL_STACK".
55 :vartype monitoring_type: str or ~azure.mgmt.dynatrace.models.MonitoringType
56 :ivar auto_update_setting: Update settings of OneAgent. Known values are: "ENABLED" and
57 "DISABLED".
58 :vartype auto_update_setting: str or ~azure.mgmt.dynatrace.models.AutoUpdateSetting
59 :ivar update_status: The current update status of OneAgent. Known values are: "INCOMPATIBLE",
60 "OUTDATED", "SCHEDULED", "SUPPRESSED", "UNKNOWN", "UP2DATE", "UPDATE_IN_PROGRESS",
61 "UPDATE_PENDING", and "UPDATE_PROBLEM".
62 :vartype update_status: str or ~azure.mgmt.dynatrace.models.UpdateStatus
63 :ivar availability_state: The availability state of OneAgent. Known values are: "CRASHED",
64 "LOST", "MONITORED", "PRE_MONITORED", "SHUTDOWN", "UNEXPECTED_SHUTDOWN", "UNKNOWN", and
65 "UNMONITORED".
66 :vartype availability_state: str or ~azure.mgmt.dynatrace.models.AvailabilityState
67 :ivar log_module: Tells whether log modules are enabled or not. Known values are: "ENABLED" and
68 "DISABLED".
69 :vartype log_module: str or ~azure.mgmt.dynatrace.models.LogModule
70 :ivar host_group: The name of the host group.
71 :vartype host_group: str
72 :ivar host_name: The name of the host.
73 :vartype host_name: str
74 """
75
76 _attribute_map = {
77 "resource_id": {"key": "resourceId", "type": "str"},
78 "version": {"key": "version", "type": "str"},
79 "monitoring_type": {"key": "monitoringType", "type": "str"},
80 "auto_update_setting": {"key": "autoUpdateSetting", "type": "str"},
81 "update_status": {"key": "updateStatus", "type": "str"},
82 "availability_state": {"key": "availabilityState", "type": "str"},
83 "log_module": {"key": "logModule", "type": "str"},
84 "host_group": {"key": "hostGroup", "type": "str"},
85 "host_name": {"key": "hostName", "type": "str"},
86 }
87
88 def __init__(
89 self,
90 *,
91 resource_id: Optional[str] = None,
92 version: Optional[str] = None,
93 monitoring_type: Optional[Union[str, "_models.MonitoringType"]] = None,
94 auto_update_setting: Optional[Union[str, "_models.AutoUpdateSetting"]] = None,
95 update_status: Optional[Union[str, "_models.UpdateStatus"]] = None,
96 availability_state: Optional[Union[str, "_models.AvailabilityState"]] = None,
97 log_module: Optional[Union[str, "_models.LogModule"]] = None,
98 host_group: Optional[str] = None,
99 host_name: Optional[str] = None,
100 **kwargs: Any
101 ) -> None:
102 """
103 :keyword resource_id: App service resource ID.
104 :paramtype resource_id: str
105 :keyword version: Version of the Dynatrace agent installed on the App Service.
106 :paramtype version: str
107 :keyword monitoring_type: The monitoring mode of OneAgent. Known values are:
108 "CLOUD_INFRASTRUCTURE" and "FULL_STACK".
109 :paramtype monitoring_type: str or ~azure.mgmt.dynatrace.models.MonitoringType
110 :keyword auto_update_setting: Update settings of OneAgent. Known values are: "ENABLED" and
111 "DISABLED".
112 :paramtype auto_update_setting: str or ~azure.mgmt.dynatrace.models.AutoUpdateSetting
113 :keyword update_status: The current update status of OneAgent. Known values are:
114 "INCOMPATIBLE", "OUTDATED", "SCHEDULED", "SUPPRESSED", "UNKNOWN", "UP2DATE",
115 "UPDATE_IN_PROGRESS", "UPDATE_PENDING", and "UPDATE_PROBLEM".
116 :paramtype update_status: str or ~azure.mgmt.dynatrace.models.UpdateStatus
117 :keyword availability_state: The availability state of OneAgent. Known values are: "CRASHED",
118 "LOST", "MONITORED", "PRE_MONITORED", "SHUTDOWN", "UNEXPECTED_SHUTDOWN", "UNKNOWN", and
119 "UNMONITORED".
120 :paramtype availability_state: str or ~azure.mgmt.dynatrace.models.AvailabilityState
121 :keyword log_module: Tells whether log modules are enabled or not. Known values are: "ENABLED"
122 and "DISABLED".
123 :paramtype log_module: str or ~azure.mgmt.dynatrace.models.LogModule
124 :keyword host_group: The name of the host group.
125 :paramtype host_group: str
126 :keyword host_name: The name of the host.
127 :paramtype host_name: str
128 """
129 super().__init__(**kwargs)
130 self.resource_id = resource_id
131 self.version = version
132 self.monitoring_type = monitoring_type
133 self.auto_update_setting = auto_update_setting
134 self.update_status = update_status
135 self.availability_state = availability_state
136 self.log_module = log_module
137 self.host_group = host_group
138 self.host_name = host_name
139
140
141class AppServiceListResponse(_serialization.Model):
142 """Response of a list App Services Operation.
143
144 :ivar value: The items on this page.
145 :vartype value: list[~azure.mgmt.dynatrace.models.AppServiceInfo]
146 :ivar next_link: The link to the next page of items.
147 :vartype next_link: str
148 """
149
150 _attribute_map = {
151 "value": {"key": "value", "type": "[AppServiceInfo]"},
152 "next_link": {"key": "nextLink", "type": "str"},
153 }
154
155 def __init__(
156 self, *, value: Optional[List["_models.AppServiceInfo"]] = None, next_link: Optional[str] = None, **kwargs: Any
157 ) -> None:
158 """
159 :keyword value: The items on this page.
160 :paramtype value: list[~azure.mgmt.dynatrace.models.AppServiceInfo]
161 :keyword next_link: The link to the next page of items.
162 :paramtype next_link: str
163 """
164 super().__init__(**kwargs)
165 self.value = value
166 self.next_link = next_link
167
168
169class DynatraceEnvironmentProperties(_serialization.Model):
170 """Properties of the Dynatrace environment.
171
172 :ivar user_id: User id.
173 :vartype user_id: str
174 :ivar account_info: Dynatrace Account Information.
175 :vartype account_info: ~azure.mgmt.dynatrace.models.AccountInfo
176 :ivar environment_info: Dynatrace Environment Information.
177 :vartype environment_info: ~azure.mgmt.dynatrace.models.EnvironmentInfo
178 :ivar single_sign_on_properties: The details of a Dynatrace single sign-on.
179 :vartype single_sign_on_properties:
180 ~azure.mgmt.dynatrace.models.DynatraceSingleSignOnProperties
181 """
182
183 _attribute_map = {
184 "user_id": {"key": "userId", "type": "str"},
185 "account_info": {"key": "accountInfo", "type": "AccountInfo"},
186 "environment_info": {"key": "environmentInfo", "type": "EnvironmentInfo"},
187 "single_sign_on_properties": {"key": "singleSignOnProperties", "type": "DynatraceSingleSignOnProperties"},
188 }
189
190 def __init__(
191 self,
192 *,
193 user_id: Optional[str] = None,
194 account_info: Optional["_models.AccountInfo"] = None,
195 environment_info: Optional["_models.EnvironmentInfo"] = None,
196 single_sign_on_properties: Optional["_models.DynatraceSingleSignOnProperties"] = None,
197 **kwargs: Any
198 ) -> None:
199 """
200 :keyword user_id: User id.
201 :paramtype user_id: str
202 :keyword account_info: Dynatrace Account Information.
203 :paramtype account_info: ~azure.mgmt.dynatrace.models.AccountInfo
204 :keyword environment_info: Dynatrace Environment Information.
205 :paramtype environment_info: ~azure.mgmt.dynatrace.models.EnvironmentInfo
206 :keyword single_sign_on_properties: The details of a Dynatrace single sign-on.
207 :paramtype single_sign_on_properties:
208 ~azure.mgmt.dynatrace.models.DynatraceSingleSignOnProperties
209 """
210 super().__init__(**kwargs)
211 self.user_id = user_id
212 self.account_info = account_info
213 self.environment_info = environment_info
214 self.single_sign_on_properties = single_sign_on_properties
215
216
217class DynatraceSingleSignOnProperties(_serialization.Model):
218 """The details of a Dynatrace single sign-on.
219
220 Variables are only populated by the server, and will be ignored when sending a request.
221
222 :ivar single_sign_on_state: State of Single Sign On. Known values are: "Initial", "Enable",
223 "Disable", and "Existing".
224 :vartype single_sign_on_state: str or ~azure.mgmt.dynatrace.models.SingleSignOnStates
225 :ivar enterprise_app_id: Version of the Dynatrace agent installed on the VM.
226 :vartype enterprise_app_id: str
227 :ivar single_sign_on_url: The login URL specific to this Dynatrace Environment.
228 :vartype single_sign_on_url: str
229 :ivar aad_domains: array of Aad(azure active directory) domains.
230 :vartype aad_domains: list[str]
231 :ivar provisioning_state: Provisioning state of the resource. Known values are: "Accepted",
232 "Creating", "Updating", "Deleting", "Succeeded", "Failed", "Canceled", "Deleted", and
233 "NotSpecified".
234 :vartype provisioning_state: str or ~azure.mgmt.dynatrace.models.ProvisioningState
235 """
236
237 _validation = {
238 "provisioning_state": {"readonly": True},
239 }
240
241 _attribute_map = {
242 "single_sign_on_state": {"key": "singleSignOnState", "type": "str"},
243 "enterprise_app_id": {"key": "enterpriseAppId", "type": "str"},
244 "single_sign_on_url": {"key": "singleSignOnUrl", "type": "str"},
245 "aad_domains": {"key": "aadDomains", "type": "[str]"},
246 "provisioning_state": {"key": "provisioningState", "type": "str"},
247 }
248
249 def __init__(
250 self,
251 *,
252 single_sign_on_state: Optional[Union[str, "_models.SingleSignOnStates"]] = None,
253 enterprise_app_id: Optional[str] = None,
254 single_sign_on_url: Optional[str] = None,
255 aad_domains: Optional[List[str]] = None,
256 **kwargs: Any
257 ) -> None:
258 """
259 :keyword single_sign_on_state: State of Single Sign On. Known values are: "Initial", "Enable",
260 "Disable", and "Existing".
261 :paramtype single_sign_on_state: str or ~azure.mgmt.dynatrace.models.SingleSignOnStates
262 :keyword enterprise_app_id: Version of the Dynatrace agent installed on the VM.
263 :paramtype enterprise_app_id: str
264 :keyword single_sign_on_url: The login URL specific to this Dynatrace Environment.
265 :paramtype single_sign_on_url: str
266 :keyword aad_domains: array of Aad(azure active directory) domains.
267 :paramtype aad_domains: list[str]
268 """
269 super().__init__(**kwargs)
270 self.single_sign_on_state = single_sign_on_state
271 self.enterprise_app_id = enterprise_app_id
272 self.single_sign_on_url = single_sign_on_url
273 self.aad_domains = aad_domains
274 self.provisioning_state = None
275
276
277class Resource(_serialization.Model):
278 """Common fields that are returned in the response for all Azure Resource Manager resources.
279
280 Variables are only populated by the server, and will be ignored when sending a request.
281
282 :ivar id: Fully qualified resource ID for the resource. Ex -
283 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
284 :vartype id: str
285 :ivar name: The name of the resource.
286 :vartype name: str
287 :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
288 "Microsoft.Storage/storageAccounts".
289 :vartype type: str
290 """
291
292 _validation = {
293 "id": {"readonly": True},
294 "name": {"readonly": True},
295 "type": {"readonly": True},
296 }
297
298 _attribute_map = {
299 "id": {"key": "id", "type": "str"},
300 "name": {"key": "name", "type": "str"},
301 "type": {"key": "type", "type": "str"},
302 }
303
304 def __init__(self, **kwargs: Any) -> None:
305 """ """
306 super().__init__(**kwargs)
307 self.id = None
308 self.name = None
309 self.type = None
310
311
312class ProxyResource(Resource):
313 """The resource model definition for a Azure Resource Manager proxy resource. It will not have
314 tags and a location.
315
316 Variables are only populated by the server, and will be ignored when sending a request.
317
318 :ivar id: Fully qualified resource ID for the resource. Ex -
319 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
320 :vartype id: str
321 :ivar name: The name of the resource.
322 :vartype name: str
323 :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
324 "Microsoft.Storage/storageAccounts".
325 :vartype type: str
326 """
327
328 _validation = {
329 "id": {"readonly": True},
330 "name": {"readonly": True},
331 "type": {"readonly": True},
332 }
333
334 _attribute_map = {
335 "id": {"key": "id", "type": "str"},
336 "name": {"key": "name", "type": "str"},
337 "type": {"key": "type", "type": "str"},
338 }
339
340 def __init__(self, **kwargs: Any) -> None:
341 """ """
342 super().__init__(**kwargs)
343
344
345class DynatraceSingleSignOnResource(ProxyResource):
346 """Single sign-on configurations for a given monitor resource.
347
348 Variables are only populated by the server, and will be ignored when sending a request.
349
350 :ivar id: Fully qualified resource ID for the resource. Ex -
351 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
352 :vartype id: str
353 :ivar name: The name of the resource.
354 :vartype name: str
355 :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
356 "Microsoft.Storage/storageAccounts".
357 :vartype type: str
358 :ivar system_data: System metadata for this resource.
359 :vartype system_data: ~azure.mgmt.dynatrace.models.SystemData
360 :ivar single_sign_on_state: State of Single Sign On. Known values are: "Initial", "Enable",
361 "Disable", and "Existing".
362 :vartype single_sign_on_state: str or ~azure.mgmt.dynatrace.models.SingleSignOnStates
363 :ivar enterprise_app_id: Version of the Dynatrace agent installed on the VM.
364 :vartype enterprise_app_id: str
365 :ivar single_sign_on_url: The login URL specific to this Dynatrace Environment.
366 :vartype single_sign_on_url: str
367 :ivar aad_domains: array of Aad(azure active directory) domains.
368 :vartype aad_domains: list[str]
369 :ivar provisioning_state: Provisioning state of the resource. Known values are: "Accepted",
370 "Creating", "Updating", "Deleting", "Succeeded", "Failed", "Canceled", "Deleted", and
371 "NotSpecified".
372 :vartype provisioning_state: str or ~azure.mgmt.dynatrace.models.ProvisioningState
373 """
374
375 _validation = {
376 "id": {"readonly": True},
377 "name": {"readonly": True},
378 "type": {"readonly": True},
379 "system_data": {"readonly": True},
380 "provisioning_state": {"readonly": True},
381 }
382
383 _attribute_map = {
384 "id": {"key": "id", "type": "str"},
385 "name": {"key": "name", "type": "str"},
386 "type": {"key": "type", "type": "str"},
387 "system_data": {"key": "systemData", "type": "SystemData"},
388 "single_sign_on_state": {"key": "properties.singleSignOnState", "type": "str"},
389 "enterprise_app_id": {"key": "properties.enterpriseAppId", "type": "str"},
390 "single_sign_on_url": {"key": "properties.singleSignOnUrl", "type": "str"},
391 "aad_domains": {"key": "properties.aadDomains", "type": "[str]"},
392 "provisioning_state": {"key": "properties.provisioningState", "type": "str"},
393 }
394
395 def __init__(
396 self,
397 *,
398 single_sign_on_state: Optional[Union[str, "_models.SingleSignOnStates"]] = None,
399 enterprise_app_id: Optional[str] = None,
400 single_sign_on_url: Optional[str] = None,
401 aad_domains: Optional[List[str]] = None,
402 **kwargs: Any
403 ) -> None:
404 """
405 :keyword single_sign_on_state: State of Single Sign On. Known values are: "Initial", "Enable",
406 "Disable", and "Existing".
407 :paramtype single_sign_on_state: str or ~azure.mgmt.dynatrace.models.SingleSignOnStates
408 :keyword enterprise_app_id: Version of the Dynatrace agent installed on the VM.
409 :paramtype enterprise_app_id: str
410 :keyword single_sign_on_url: The login URL specific to this Dynatrace Environment.
411 :paramtype single_sign_on_url: str
412 :keyword aad_domains: array of Aad(azure active directory) domains.
413 :paramtype aad_domains: list[str]
414 """
415 super().__init__(**kwargs)
416 self.system_data = None
417 self.single_sign_on_state = single_sign_on_state
418 self.enterprise_app_id = enterprise_app_id
419 self.single_sign_on_url = single_sign_on_url
420 self.aad_domains = aad_domains
421 self.provisioning_state = None
422
423
424class DynatraceSingleSignOnResourceListResult(_serialization.Model):
425 """The response of a DynatraceSingleSignOnResource list operation.
426
427 All required parameters must be populated in order to send to Azure.
428
429 :ivar value: The items on this page. Required.
430 :vartype value: list[~azure.mgmt.dynatrace.models.DynatraceSingleSignOnResource]
431 :ivar next_link: The link to the next page of items.
432 :vartype next_link: str
433 """
434
435 _validation = {
436 "value": {"required": True},
437 }
438
439 _attribute_map = {
440 "value": {"key": "value", "type": "[DynatraceSingleSignOnResource]"},
441 "next_link": {"key": "nextLink", "type": "str"},
442 }
443
444 def __init__(
445 self, *, value: List["_models.DynatraceSingleSignOnResource"], next_link: Optional[str] = None, **kwargs: Any
446 ) -> None:
447 """
448 :keyword value: The items on this page. Required.
449 :paramtype value: list[~azure.mgmt.dynatrace.models.DynatraceSingleSignOnResource]
450 :keyword next_link: The link to the next page of items.
451 :paramtype next_link: str
452 """
453 super().__init__(**kwargs)
454 self.value = value
455 self.next_link = next_link
456
457
458class EnvironmentInfo(_serialization.Model):
459 """Dynatrace Environment Information.
460
461 :ivar environment_id: Id of the environment created.
462 :vartype environment_id: str
463 :ivar ingestion_key: Ingestion key of the environment.
464 :vartype ingestion_key: str
465 :ivar logs_ingestion_endpoint: Ingestion endpoint used for sending logs.
466 :vartype logs_ingestion_endpoint: str
467 :ivar landing_url: Landing URL for Dynatrace environment.
468 :vartype landing_url: str
469 """
470
471 _attribute_map = {
472 "environment_id": {"key": "environmentId", "type": "str"},
473 "ingestion_key": {"key": "ingestionKey", "type": "str"},
474 "logs_ingestion_endpoint": {"key": "logsIngestionEndpoint", "type": "str"},
475 "landing_url": {"key": "landingURL", "type": "str"},
476 }
477
478 def __init__(
479 self,
480 *,
481 environment_id: Optional[str] = None,
482 ingestion_key: Optional[str] = None,
483 logs_ingestion_endpoint: Optional[str] = None,
484 landing_url: Optional[str] = None,
485 **kwargs: Any
486 ) -> None:
487 """
488 :keyword environment_id: Id of the environment created.
489 :paramtype environment_id: str
490 :keyword ingestion_key: Ingestion key of the environment.
491 :paramtype ingestion_key: str
492 :keyword logs_ingestion_endpoint: Ingestion endpoint used for sending logs.
493 :paramtype logs_ingestion_endpoint: str
494 :keyword landing_url: Landing URL for Dynatrace environment.
495 :paramtype landing_url: str
496 """
497 super().__init__(**kwargs)
498 self.environment_id = environment_id
499 self.ingestion_key = ingestion_key
500 self.logs_ingestion_endpoint = logs_ingestion_endpoint
501 self.landing_url = landing_url
502
503
504class ErrorAdditionalInfo(_serialization.Model):
505 """The resource management error additional info.
506
507 Variables are only populated by the server, and will be ignored when sending a request.
508
509 :ivar type: The additional info type.
510 :vartype type: str
511 :ivar info: The additional info.
512 :vartype info: JSON
513 """
514
515 _validation = {
516 "type": {"readonly": True},
517 "info": {"readonly": True},
518 }
519
520 _attribute_map = {
521 "type": {"key": "type", "type": "str"},
522 "info": {"key": "info", "type": "object"},
523 }
524
525 def __init__(self, **kwargs: Any) -> None:
526 """ """
527 super().__init__(**kwargs)
528 self.type = None
529 self.info = None
530
531
532class ErrorDetail(_serialization.Model):
533 """The error detail.
534
535 Variables are only populated by the server, and will be ignored when sending a request.
536
537 :ivar code: The error code.
538 :vartype code: str
539 :ivar message: The error message.
540 :vartype message: str
541 :ivar target: The error target.
542 :vartype target: str
543 :ivar details: The error details.
544 :vartype details: list[~azure.mgmt.dynatrace.models.ErrorDetail]
545 :ivar additional_info: The error additional info.
546 :vartype additional_info: list[~azure.mgmt.dynatrace.models.ErrorAdditionalInfo]
547 """
548
549 _validation = {
550 "code": {"readonly": True},
551 "message": {"readonly": True},
552 "target": {"readonly": True},
553 "details": {"readonly": True},
554 "additional_info": {"readonly": True},
555 }
556
557 _attribute_map = {
558 "code": {"key": "code", "type": "str"},
559 "message": {"key": "message", "type": "str"},
560 "target": {"key": "target", "type": "str"},
561 "details": {"key": "details", "type": "[ErrorDetail]"},
562 "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"},
563 }
564
565 def __init__(self, **kwargs: Any) -> None:
566 """ """
567 super().__init__(**kwargs)
568 self.code = None
569 self.message = None
570 self.target = None
571 self.details = None
572 self.additional_info = None
573
574
575class ErrorResponse(_serialization.Model):
576 """Common error response for all Azure Resource Manager APIs to return error details for failed
577 operations. (This also follows the OData error response format.).
578
579 :ivar error: The error object.
580 :vartype error: ~azure.mgmt.dynatrace.models.ErrorDetail
581 """
582
583 _attribute_map = {
584 "error": {"key": "error", "type": "ErrorDetail"},
585 }
586
587 def __init__(self, *, error: Optional["_models.ErrorDetail"] = None, **kwargs: Any) -> None:
588 """
589 :keyword error: The error object.
590 :paramtype error: ~azure.mgmt.dynatrace.models.ErrorDetail
591 """
592 super().__init__(**kwargs)
593 self.error = error
594
595
596class FilteringTag(_serialization.Model):
597 """The definition of a filtering tag. Filtering tags are used for capturing resources and
598 include/exclude them from being monitored.
599
600 :ivar name: The name (also known as the key) of the tag.
601 :vartype name: str
602 :ivar value: The value of the tag.
603 :vartype value: str
604 :ivar action: Valid actions for a filtering tag. Exclusion takes priority over inclusion. Known
605 values are: "Include" and "Exclude".
606 :vartype action: str or ~azure.mgmt.dynatrace.models.TagAction
607 """
608
609 _attribute_map = {
610 "name": {"key": "name", "type": "str"},
611 "value": {"key": "value", "type": "str"},
612 "action": {"key": "action", "type": "str"},
613 }
614
615 def __init__(
616 self,
617 *,
618 name: Optional[str] = None,
619 value: Optional[str] = None,
620 action: Optional[Union[str, "_models.TagAction"]] = None,
621 **kwargs: Any
622 ) -> None:
623 """
624 :keyword name: The name (also known as the key) of the tag.
625 :paramtype name: str
626 :keyword value: The value of the tag.
627 :paramtype value: str
628 :keyword action: Valid actions for a filtering tag. Exclusion takes priority over inclusion.
629 Known values are: "Include" and "Exclude".
630 :paramtype action: str or ~azure.mgmt.dynatrace.models.TagAction
631 """
632 super().__init__(**kwargs)
633 self.name = name
634 self.value = value
635 self.action = action
636
637
638class IdentityProperties(_serialization.Model):
639 """The properties of the managed service identities assigned to this resource.
640
641 Variables are only populated by the server, and will be ignored when sending a request.
642
643 All required parameters must be populated in order to send to Azure.
644
645 :ivar tenant_id: The Active Directory tenant id of the principal.
646 :vartype tenant_id: str
647 :ivar principal_id: The active directory identifier of this principal.
648 :vartype principal_id: str
649 :ivar type: The type of managed identity assigned to this resource. Required. Known values are:
650 "SystemAssigned", "UserAssigned", and "SystemAndUserAssigned".
651 :vartype type: str or ~azure.mgmt.dynatrace.models.ManagedIdentityType
652 :ivar user_assigned_identities: The identities assigned to this resource by the user.
653 :vartype user_assigned_identities: dict[str, ~azure.mgmt.dynatrace.models.UserAssignedIdentity]
654 """
655
656 _validation = {
657 "tenant_id": {"readonly": True},
658 "principal_id": {"readonly": True},
659 "type": {"required": True},
660 }
661
662 _attribute_map = {
663 "tenant_id": {"key": "tenantId", "type": "str"},
664 "principal_id": {"key": "principalId", "type": "str"},
665 "type": {"key": "type", "type": "str"},
666 "user_assigned_identities": {"key": "userAssignedIdentities", "type": "{UserAssignedIdentity}"},
667 }
668
669 def __init__(
670 self,
671 *,
672 type: Union[str, "_models.ManagedIdentityType"],
673 user_assigned_identities: Optional[Dict[str, "_models.UserAssignedIdentity"]] = None,
674 **kwargs: Any
675 ) -> None:
676 """
677 :keyword type: The type of managed identity assigned to this resource. Required. Known values
678 are: "SystemAssigned", "UserAssigned", and "SystemAndUserAssigned".
679 :paramtype type: str or ~azure.mgmt.dynatrace.models.ManagedIdentityType
680 :keyword user_assigned_identities: The identities assigned to this resource by the user.
681 :paramtype user_assigned_identities: dict[str,
682 ~azure.mgmt.dynatrace.models.UserAssignedIdentity]
683 """
684 super().__init__(**kwargs)
685 self.tenant_id = None
686 self.principal_id = None
687 self.type = type
688 self.user_assigned_identities = user_assigned_identities
689
690
691class LinkableEnvironmentListResponse(_serialization.Model):
692 """Response for getting all the linkable environments.
693
694 :ivar value: List of environments for which user is an admin.
695 :vartype value: list[~azure.mgmt.dynatrace.models.LinkableEnvironmentResponse]
696 :ivar next_link: Link to the next set of results, if any.
697 :vartype next_link: str
698 """
699
700 _attribute_map = {
701 "value": {"key": "value", "type": "[LinkableEnvironmentResponse]"},
702 "next_link": {"key": "nextLink", "type": "str"},
703 }
704
705 def __init__(
706 self,
707 *,
708 value: Optional[List["_models.LinkableEnvironmentResponse"]] = None,
709 next_link: Optional[str] = None,
710 **kwargs: Any
711 ) -> None:
712 """
713 :keyword value: List of environments for which user is an admin.
714 :paramtype value: list[~azure.mgmt.dynatrace.models.LinkableEnvironmentResponse]
715 :keyword next_link: Link to the next set of results, if any.
716 :paramtype next_link: str
717 """
718 super().__init__(**kwargs)
719 self.value = value
720 self.next_link = next_link
721
722
723class LinkableEnvironmentRequest(_serialization.Model):
724 """Request for getting all the linkable environments for a user.
725
726 All required parameters must be populated in order to send to Azure.
727
728 :ivar tenant_id: Tenant Id of the user in which they want to link the environment. Required.
729 :vartype tenant_id: str
730 :ivar user_principal: user principal id of the user. Required.
731 :vartype user_principal: str
732 :ivar region: Azure region in which we want to link the environment. Required.
733 :vartype region: str
734 """
735
736 _validation = {
737 "tenant_id": {"required": True},
738 "user_principal": {"required": True},
739 "region": {"required": True},
740 }
741
742 _attribute_map = {
743 "tenant_id": {"key": "tenantId", "type": "str"},
744 "user_principal": {"key": "userPrincipal", "type": "str"},
745 "region": {"key": "region", "type": "str"},
746 }
747
748 def __init__(self, *, tenant_id: str, user_principal: str, region: str, **kwargs: Any) -> None:
749 """
750 :keyword tenant_id: Tenant Id of the user in which they want to link the environment. Required.
751 :paramtype tenant_id: str
752 :keyword user_principal: user principal id of the user. Required.
753 :paramtype user_principal: str
754 :keyword region: Azure region in which we want to link the environment. Required.
755 :paramtype region: str
756 """
757 super().__init__(**kwargs)
758 self.tenant_id = tenant_id
759 self.user_principal = user_principal
760 self.region = region
761
762
763class LinkableEnvironmentResponse(_serialization.Model):
764 """Response for getting all the linkable environments.
765
766 :ivar environment_id: environment id for which user is an admin.
767 :vartype environment_id: str
768 :ivar environment_name: Name of the environment.
769 :vartype environment_name: str
770 :ivar plan_data: Billing plan information.
771 :vartype plan_data: ~azure.mgmt.dynatrace.models.PlanData
772 """
773
774 _attribute_map = {
775 "environment_id": {"key": "environmentId", "type": "str"},
776 "environment_name": {"key": "environmentName", "type": "str"},
777 "plan_data": {"key": "planData", "type": "PlanData"},
778 }
779
780 def __init__(
781 self,
782 *,
783 environment_id: Optional[str] = None,
784 environment_name: Optional[str] = None,
785 plan_data: Optional["_models.PlanData"] = None,
786 **kwargs: Any
787 ) -> None:
788 """
789 :keyword environment_id: environment id for which user is an admin.
790 :paramtype environment_id: str
791 :keyword environment_name: Name of the environment.
792 :paramtype environment_name: str
793 :keyword plan_data: Billing plan information.
794 :paramtype plan_data: ~azure.mgmt.dynatrace.models.PlanData
795 """
796 super().__init__(**kwargs)
797 self.environment_id = environment_id
798 self.environment_name = environment_name
799 self.plan_data = plan_data
800
801
802class LogRules(_serialization.Model):
803 """Set of rules for sending logs for the Monitor resource.
804
805 :ivar send_aad_logs: Flag specifying if AAD logs should be sent for the Monitor resource. Known
806 values are: "Enabled" and "Disabled".
807 :vartype send_aad_logs: str or ~azure.mgmt.dynatrace.models.SendAadLogsStatus
808 :ivar send_subscription_logs: Flag specifying if subscription logs should be sent for the
809 Monitor resource. Known values are: "Enabled" and "Disabled".
810 :vartype send_subscription_logs: str or ~azure.mgmt.dynatrace.models.SendSubscriptionLogsStatus
811 :ivar send_activity_logs: Flag specifying if activity logs from Azure resources should be sent
812 for the Monitor resource. Known values are: "Enabled" and "Disabled".
813 :vartype send_activity_logs: str or ~azure.mgmt.dynatrace.models.SendActivityLogsStatus
814 :ivar filtering_tags: List of filtering tags to be used for capturing logs. This only takes
815 effect if SendActivityLogs flag is enabled. If empty, all resources will be captured.
816 If only Exclude action is specified, the rules will apply to the list of all available
817 resources. If Include actions are specified, the rules will only include resources with the
818 associated tags.
819 :vartype filtering_tags: list[~azure.mgmt.dynatrace.models.FilteringTag]
820 """
821
822 _attribute_map = {
823 "send_aad_logs": {"key": "sendAadLogs", "type": "str"},
824 "send_subscription_logs": {"key": "sendSubscriptionLogs", "type": "str"},
825 "send_activity_logs": {"key": "sendActivityLogs", "type": "str"},
826 "filtering_tags": {"key": "filteringTags", "type": "[FilteringTag]"},
827 }
828
829 def __init__(
830 self,
831 *,
832 send_aad_logs: Optional[Union[str, "_models.SendAadLogsStatus"]] = None,
833 send_subscription_logs: Optional[Union[str, "_models.SendSubscriptionLogsStatus"]] = None,
834 send_activity_logs: Optional[Union[str, "_models.SendActivityLogsStatus"]] = None,
835 filtering_tags: Optional[List["_models.FilteringTag"]] = None,
836 **kwargs: Any
837 ) -> None:
838 """
839 :keyword send_aad_logs: Flag specifying if AAD logs should be sent for the Monitor resource.
840 Known values are: "Enabled" and "Disabled".
841 :paramtype send_aad_logs: str or ~azure.mgmt.dynatrace.models.SendAadLogsStatus
842 :keyword send_subscription_logs: Flag specifying if subscription logs should be sent for the
843 Monitor resource. Known values are: "Enabled" and "Disabled".
844 :paramtype send_subscription_logs: str or
845 ~azure.mgmt.dynatrace.models.SendSubscriptionLogsStatus
846 :keyword send_activity_logs: Flag specifying if activity logs from Azure resources should be
847 sent for the Monitor resource. Known values are: "Enabled" and "Disabled".
848 :paramtype send_activity_logs: str or ~azure.mgmt.dynatrace.models.SendActivityLogsStatus
849 :keyword filtering_tags: List of filtering tags to be used for capturing logs. This only takes
850 effect if SendActivityLogs flag is enabled. If empty, all resources will be captured.
851 If only Exclude action is specified, the rules will apply to the list of all available
852 resources. If Include actions are specified, the rules will only include resources with the
853 associated tags.
854 :paramtype filtering_tags: list[~azure.mgmt.dynatrace.models.FilteringTag]
855 """
856 super().__init__(**kwargs)
857 self.send_aad_logs = send_aad_logs
858 self.send_subscription_logs = send_subscription_logs
859 self.send_activity_logs = send_activity_logs
860 self.filtering_tags = filtering_tags
861
862
863class MarketplaceSaaSResourceDetailsRequest(_serialization.Model):
864 """Request for getting Marketplace SaaS resource details for a tenant Id.
865
866 All required parameters must be populated in order to send to Azure.
867
868 :ivar tenant_id: Tenant Id. Required.
869 :vartype tenant_id: str
870 """
871
872 _validation = {
873 "tenant_id": {"required": True},
874 }
875
876 _attribute_map = {
877 "tenant_id": {"key": "tenantId", "type": "str"},
878 }
879
880 def __init__(self, *, tenant_id: str, **kwargs: Any) -> None:
881 """
882 :keyword tenant_id: Tenant Id. Required.
883 :paramtype tenant_id: str
884 """
885 super().__init__(**kwargs)
886 self.tenant_id = tenant_id
887
888
889class MarketplaceSaaSResourceDetailsResponse(_serialization.Model):
890 """Marketplace SaaS resource details linked to the given tenant Id.
891
892 :ivar marketplace_saa_s_resource_id: Id of the Marketplace SaaS Resource.
893 :vartype marketplace_saa_s_resource_id: str
894 :ivar plan_id: Id of the plan.
895 :vartype plan_id: str
896 :ivar marketplace_subscription_status: Marketplace subscription status. Known values are:
897 "Active" and "Suspended".
898 :vartype marketplace_subscription_status: str or
899 ~azure.mgmt.dynatrace.models.MarketplaceSubscriptionStatus
900 """
901
902 _attribute_map = {
903 "marketplace_saa_s_resource_id": {"key": "marketplaceSaaSResourceId", "type": "str"},
904 "plan_id": {"key": "planId", "type": "str"},
905 "marketplace_subscription_status": {"key": "marketplaceSubscriptionStatus", "type": "str"},
906 }
907
908 def __init__(
909 self,
910 *,
911 marketplace_saa_s_resource_id: Optional[str] = None,
912 plan_id: Optional[str] = None,
913 marketplace_subscription_status: Optional[Union[str, "_models.MarketplaceSubscriptionStatus"]] = None,
914 **kwargs: Any
915 ) -> None:
916 """
917 :keyword marketplace_saa_s_resource_id: Id of the Marketplace SaaS Resource.
918 :paramtype marketplace_saa_s_resource_id: str
919 :keyword plan_id: Id of the plan.
920 :paramtype plan_id: str
921 :keyword marketplace_subscription_status: Marketplace subscription status. Known values are:
922 "Active" and "Suspended".
923 :paramtype marketplace_subscription_status: str or
924 ~azure.mgmt.dynatrace.models.MarketplaceSubscriptionStatus
925 """
926 super().__init__(**kwargs)
927 self.marketplace_saa_s_resource_id = marketplace_saa_s_resource_id
928 self.plan_id = plan_id
929 self.marketplace_subscription_status = marketplace_subscription_status
930
931
932class MetricRules(_serialization.Model):
933 """Set of rules for sending metrics for the Monitor resource.
934
935 :ivar sending_metrics: Flag specifying if metrics from Azure resources should be sent for the
936 Monitor resource. Known values are: "Enabled" and "Disabled".
937 :vartype sending_metrics: str or ~azure.mgmt.dynatrace.models.SendingMetricsStatus
938 :ivar filtering_tags: List of filtering tags to be used for capturing metrics. If empty, all
939 resources will be captured. If only Exclude action is specified, the rules will apply to the
940 list of all available resources. If Include actions are specified, the rules will only include
941 resources with the associated tags.
942 :vartype filtering_tags: list[~azure.mgmt.dynatrace.models.FilteringTag]
943 """
944
945 _attribute_map = {
946 "sending_metrics": {"key": "sendingMetrics", "type": "str"},
947 "filtering_tags": {"key": "filteringTags", "type": "[FilteringTag]"},
948 }
949
950 def __init__(
951 self,
952 *,
953 sending_metrics: Optional[Union[str, "_models.SendingMetricsStatus"]] = None,
954 filtering_tags: Optional[List["_models.FilteringTag"]] = None,
955 **kwargs: Any
956 ) -> None:
957 """
958 :keyword sending_metrics: Flag specifying if metrics from Azure resources should be sent for
959 the Monitor resource. Known values are: "Enabled" and "Disabled".
960 :paramtype sending_metrics: str or ~azure.mgmt.dynatrace.models.SendingMetricsStatus
961 :keyword filtering_tags: List of filtering tags to be used for capturing metrics. If empty, all
962 resources will be captured. If only Exclude action is specified, the rules will apply to the
963 list of all available resources. If Include actions are specified, the rules will only include
964 resources with the associated tags.
965 :paramtype filtering_tags: list[~azure.mgmt.dynatrace.models.FilteringTag]
966 """
967 super().__init__(**kwargs)
968 self.sending_metrics = sending_metrics
969 self.filtering_tags = filtering_tags
970
971
972class MetricsStatusResponse(_serialization.Model):
973 """Response of get metrics status operation.
974
975 :ivar azure_resource_ids: Azure resource IDs.
976 :vartype azure_resource_ids: list[str]
977 """
978
979 _attribute_map = {
980 "azure_resource_ids": {"key": "azureResourceIds", "type": "[str]"},
981 }
982
983 def __init__(self, *, azure_resource_ids: Optional[List[str]] = None, **kwargs: Any) -> None:
984 """
985 :keyword azure_resource_ids: Azure resource IDs.
986 :paramtype azure_resource_ids: list[str]
987 """
988 super().__init__(**kwargs)
989 self.azure_resource_ids = azure_resource_ids
990
991
992class MonitoredResource(_serialization.Model):
993 """Details of resource being monitored by Dynatrace monitor resource.
994
995 :ivar id: The ARM id of the resource.
996 :vartype id: str
997 :ivar sending_metrics: Flag indicating if resource is sending metrics to Dynatrace. Known
998 values are: "Enabled" and "Disabled".
999 :vartype sending_metrics: str or ~azure.mgmt.dynatrace.models.SendingMetricsStatus
1000 :ivar reason_for_metrics_status: Reason for why the resource is sending metrics (or why it is
1001 not sending).
1002 :vartype reason_for_metrics_status: str
1003 :ivar sending_logs: Flag indicating if resource is sending logs to Dynatrace. Known values are:
1004 "Enabled" and "Disabled".
1005 :vartype sending_logs: str or ~azure.mgmt.dynatrace.models.SendingLogsStatus
1006 :ivar reason_for_logs_status: Reason for why the resource is sending logs (or why it is not
1007 sending).
1008 :vartype reason_for_logs_status: str
1009 """
1010
1011 _attribute_map = {
1012 "id": {"key": "id", "type": "str"},
1013 "sending_metrics": {"key": "sendingMetrics", "type": "str"},
1014 "reason_for_metrics_status": {"key": "reasonForMetricsStatus", "type": "str"},
1015 "sending_logs": {"key": "sendingLogs", "type": "str"},
1016 "reason_for_logs_status": {"key": "reasonForLogsStatus", "type": "str"},
1017 }
1018
1019 def __init__(
1020 self,
1021 *,
1022 id: Optional[str] = None, # pylint: disable=redefined-builtin
1023 sending_metrics: Optional[Union[str, "_models.SendingMetricsStatus"]] = None,
1024 reason_for_metrics_status: Optional[str] = None,
1025 sending_logs: Optional[Union[str, "_models.SendingLogsStatus"]] = None,
1026 reason_for_logs_status: Optional[str] = None,
1027 **kwargs: Any
1028 ) -> None:
1029 """
1030 :keyword id: The ARM id of the resource.
1031 :paramtype id: str
1032 :keyword sending_metrics: Flag indicating if resource is sending metrics to Dynatrace. Known
1033 values are: "Enabled" and "Disabled".
1034 :paramtype sending_metrics: str or ~azure.mgmt.dynatrace.models.SendingMetricsStatus
1035 :keyword reason_for_metrics_status: Reason for why the resource is sending metrics (or why it
1036 is not sending).
1037 :paramtype reason_for_metrics_status: str
1038 :keyword sending_logs: Flag indicating if resource is sending logs to Dynatrace. Known values
1039 are: "Enabled" and "Disabled".
1040 :paramtype sending_logs: str or ~azure.mgmt.dynatrace.models.SendingLogsStatus
1041 :keyword reason_for_logs_status: Reason for why the resource is sending logs (or why it is not
1042 sending).
1043 :paramtype reason_for_logs_status: str
1044 """
1045 super().__init__(**kwargs)
1046 self.id = id
1047 self.sending_metrics = sending_metrics
1048 self.reason_for_metrics_status = reason_for_metrics_status
1049 self.sending_logs = sending_logs
1050 self.reason_for_logs_status = reason_for_logs_status
1051
1052
1053class MonitoredResourceListResponse(_serialization.Model):
1054 """List of all the resources being monitored by Dynatrace monitor resource.
1055
1056 :ivar value: The items on this page.
1057 :vartype value: list[~azure.mgmt.dynatrace.models.MonitoredResource]
1058 :ivar next_link: The link to the next page of items.
1059 :vartype next_link: str
1060 """
1061
1062 _attribute_map = {
1063 "value": {"key": "value", "type": "[MonitoredResource]"},
1064 "next_link": {"key": "nextLink", "type": "str"},
1065 }
1066
1067 def __init__(
1068 self,
1069 *,
1070 value: Optional[List["_models.MonitoredResource"]] = None,
1071 next_link: Optional[str] = None,
1072 **kwargs: Any
1073 ) -> None:
1074 """
1075 :keyword value: The items on this page.
1076 :paramtype value: list[~azure.mgmt.dynatrace.models.MonitoredResource]
1077 :keyword next_link: The link to the next page of items.
1078 :paramtype next_link: str
1079 """
1080 super().__init__(**kwargs)
1081 self.value = value
1082 self.next_link = next_link
1083
1084
1085class TrackedResource(Resource):
1086 """The resource model definition for an Azure Resource Manager tracked top level resource which
1087 has 'tags' and a 'location'.
1088
1089 Variables are only populated by the server, and will be ignored when sending a request.
1090
1091 All required parameters must be populated in order to send to Azure.
1092
1093 :ivar id: Fully qualified resource ID for the resource. Ex -
1094 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
1095 :vartype id: str
1096 :ivar name: The name of the resource.
1097 :vartype name: str
1098 :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
1099 "Microsoft.Storage/storageAccounts".
1100 :vartype type: str
1101 :ivar tags: Resource tags.
1102 :vartype tags: dict[str, str]
1103 :ivar location: The geo-location where the resource lives. Required.
1104 :vartype location: str
1105 """
1106
1107 _validation = {
1108 "id": {"readonly": True},
1109 "name": {"readonly": True},
1110 "type": {"readonly": True},
1111 "location": {"required": True},
1112 }
1113
1114 _attribute_map = {
1115 "id": {"key": "id", "type": "str"},
1116 "name": {"key": "name", "type": "str"},
1117 "type": {"key": "type", "type": "str"},
1118 "tags": {"key": "tags", "type": "{str}"},
1119 "location": {"key": "location", "type": "str"},
1120 }
1121
1122 def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None:
1123 """
1124 :keyword tags: Resource tags.
1125 :paramtype tags: dict[str, str]
1126 :keyword location: The geo-location where the resource lives. Required.
1127 :paramtype location: str
1128 """
1129 super().__init__(**kwargs)
1130 self.tags = tags
1131 self.location = location
1132
1133
1134class MonitorResource(TrackedResource): # pylint: disable=too-many-instance-attributes
1135 """Dynatrace Monitor Resource.
1136
1137 Variables are only populated by the server, and will be ignored when sending a request.
1138
1139 All required parameters must be populated in order to send to Azure.
1140
1141 :ivar id: Fully qualified resource ID for the resource. Ex -
1142 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
1143 :vartype id: str
1144 :ivar name: The name of the resource.
1145 :vartype name: str
1146 :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
1147 "Microsoft.Storage/storageAccounts".
1148 :vartype type: str
1149 :ivar tags: Resource tags.
1150 :vartype tags: dict[str, str]
1151 :ivar location: The geo-location where the resource lives. Required.
1152 :vartype location: str
1153 :ivar system_data: System metadata for this resource.
1154 :vartype system_data: ~azure.mgmt.dynatrace.models.SystemData
1155 :ivar identity: The managed service identities assigned to this resource.
1156 :vartype identity: ~azure.mgmt.dynatrace.models.IdentityProperties
1157 :ivar monitoring_status: Status of the monitor. Known values are: "Enabled" and "Disabled".
1158 :vartype monitoring_status: str or ~azure.mgmt.dynatrace.models.MonitoringStatus
1159 :ivar marketplace_subscription_status: Marketplace subscription status. Known values are:
1160 "Active" and "Suspended".
1161 :vartype marketplace_subscription_status: str or
1162 ~azure.mgmt.dynatrace.models.MarketplaceSubscriptionStatus
1163 :ivar dynatrace_environment_properties: Properties of the Dynatrace environment.
1164 :vartype dynatrace_environment_properties:
1165 ~azure.mgmt.dynatrace.models.DynatraceEnvironmentProperties
1166 :ivar user_info: User info.
1167 :vartype user_info: ~azure.mgmt.dynatrace.models.UserInfo
1168 :ivar plan_data: Billing plan information.
1169 :vartype plan_data: ~azure.mgmt.dynatrace.models.PlanData
1170 :ivar liftr_resource_category: Liftr Resource category. Known values are: "Unknown" and
1171 "MonitorLogs".
1172 :vartype liftr_resource_category: str or ~azure.mgmt.dynatrace.models.LiftrResourceCategories
1173 :ivar liftr_resource_preference: The priority of the resource.
1174 :vartype liftr_resource_preference: int
1175 :ivar provisioning_state: Provisioning state of the resource. Known values are: "Accepted",
1176 "Creating", "Updating", "Deleting", "Succeeded", "Failed", "Canceled", "Deleted", and
1177 "NotSpecified".
1178 :vartype provisioning_state: str or ~azure.mgmt.dynatrace.models.ProvisioningState
1179 """
1180
1181 _validation = {
1182 "id": {"readonly": True},
1183 "name": {"readonly": True},
1184 "type": {"readonly": True},
1185 "location": {"required": True},
1186 "system_data": {"readonly": True},
1187 "liftr_resource_category": {"readonly": True},
1188 "liftr_resource_preference": {"readonly": True},
1189 "provisioning_state": {"readonly": True},
1190 }
1191
1192 _attribute_map = {
1193 "id": {"key": "id", "type": "str"},
1194 "name": {"key": "name", "type": "str"},
1195 "type": {"key": "type", "type": "str"},
1196 "tags": {"key": "tags", "type": "{str}"},
1197 "location": {"key": "location", "type": "str"},
1198 "system_data": {"key": "systemData", "type": "SystemData"},
1199 "identity": {"key": "identity", "type": "IdentityProperties"},
1200 "monitoring_status": {"key": "properties.monitoringStatus", "type": "str"},
1201 "marketplace_subscription_status": {"key": "properties.marketplaceSubscriptionStatus", "type": "str"},
1202 "dynatrace_environment_properties": {
1203 "key": "properties.dynatraceEnvironmentProperties",
1204 "type": "DynatraceEnvironmentProperties",
1205 },
1206 "user_info": {"key": "properties.userInfo", "type": "UserInfo"},
1207 "plan_data": {"key": "properties.planData", "type": "PlanData"},
1208 "liftr_resource_category": {"key": "properties.liftrResourceCategory", "type": "str"},
1209 "liftr_resource_preference": {"key": "properties.liftrResourcePreference", "type": "int"},
1210 "provisioning_state": {"key": "properties.provisioningState", "type": "str"},
1211 }
1212
1213 def __init__(
1214 self,
1215 *,
1216 location: str,
1217 tags: Optional[Dict[str, str]] = None,
1218 identity: Optional["_models.IdentityProperties"] = None,
1219 monitoring_status: Optional[Union[str, "_models.MonitoringStatus"]] = None,
1220 marketplace_subscription_status: Optional[Union[str, "_models.MarketplaceSubscriptionStatus"]] = None,
1221 dynatrace_environment_properties: Optional["_models.DynatraceEnvironmentProperties"] = None,
1222 user_info: Optional["_models.UserInfo"] = None,
1223 plan_data: Optional["_models.PlanData"] = None,
1224 **kwargs: Any
1225 ) -> None:
1226 """
1227 :keyword tags: Resource tags.
1228 :paramtype tags: dict[str, str]
1229 :keyword location: The geo-location where the resource lives. Required.
1230 :paramtype location: str
1231 :keyword identity: The managed service identities assigned to this resource.
1232 :paramtype identity: ~azure.mgmt.dynatrace.models.IdentityProperties
1233 :keyword monitoring_status: Status of the monitor. Known values are: "Enabled" and "Disabled".
1234 :paramtype monitoring_status: str or ~azure.mgmt.dynatrace.models.MonitoringStatus
1235 :keyword marketplace_subscription_status: Marketplace subscription status. Known values are:
1236 "Active" and "Suspended".
1237 :paramtype marketplace_subscription_status: str or
1238 ~azure.mgmt.dynatrace.models.MarketplaceSubscriptionStatus
1239 :keyword dynatrace_environment_properties: Properties of the Dynatrace environment.
1240 :paramtype dynatrace_environment_properties:
1241 ~azure.mgmt.dynatrace.models.DynatraceEnvironmentProperties
1242 :keyword user_info: User info.
1243 :paramtype user_info: ~azure.mgmt.dynatrace.models.UserInfo
1244 :keyword plan_data: Billing plan information.
1245 :paramtype plan_data: ~azure.mgmt.dynatrace.models.PlanData
1246 """
1247 super().__init__(tags=tags, location=location, **kwargs)
1248 self.system_data = None
1249 self.identity = identity
1250 self.monitoring_status = monitoring_status
1251 self.marketplace_subscription_status = marketplace_subscription_status
1252 self.dynatrace_environment_properties = dynatrace_environment_properties
1253 self.user_info = user_info
1254 self.plan_data = plan_data
1255 self.liftr_resource_category = None
1256 self.liftr_resource_preference = None
1257 self.provisioning_state = None
1258
1259
1260class MonitorResourceListResult(_serialization.Model):
1261 """The response of a MonitorResource list operation.
1262
1263 All required parameters must be populated in order to send to Azure.
1264
1265 :ivar value: The items on this page. Required.
1266 :vartype value: list[~azure.mgmt.dynatrace.models.MonitorResource]
1267 :ivar next_link: The link to the next page of items.
1268 :vartype next_link: str
1269 """
1270
1271 _validation = {
1272 "value": {"required": True},
1273 }
1274
1275 _attribute_map = {
1276 "value": {"key": "value", "type": "[MonitorResource]"},
1277 "next_link": {"key": "nextLink", "type": "str"},
1278 }
1279
1280 def __init__(
1281 self, *, value: List["_models.MonitorResource"], next_link: Optional[str] = None, **kwargs: Any
1282 ) -> None:
1283 """
1284 :keyword value: The items on this page. Required.
1285 :paramtype value: list[~azure.mgmt.dynatrace.models.MonitorResource]
1286 :keyword next_link: The link to the next page of items.
1287 :paramtype next_link: str
1288 """
1289 super().__init__(**kwargs)
1290 self.value = value
1291 self.next_link = next_link
1292
1293
1294class MonitorResourceUpdate(_serialization.Model):
1295 """The updatable properties of the MonitorResource.
1296
1297 :ivar tags: Resource tags.
1298 :vartype tags: dict[str, str]
1299 """
1300
1301 _attribute_map = {
1302 "tags": {"key": "tags", "type": "{str}"},
1303 }
1304
1305 def __init__(self, *, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None:
1306 """
1307 :keyword tags: Resource tags.
1308 :paramtype tags: dict[str, str]
1309 """
1310 super().__init__(**kwargs)
1311 self.tags = tags
1312
1313
1314class Operation(_serialization.Model):
1315 """Details of a REST API operation, returned from the Resource Provider Operations API.
1316
1317 Variables are only populated by the server, and will be ignored when sending a request.
1318
1319 :ivar name: The name of the operation, as per Resource-Based Access Control (RBAC). Examples:
1320 "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action".
1321 :vartype name: str
1322 :ivar is_data_action: Whether the operation applies to data-plane. This is "true" for
1323 data-plane operations and "false" for ARM/control-plane operations.
1324 :vartype is_data_action: bool
1325 :ivar display: Localized display information for this particular operation.
1326 :vartype display: ~azure.mgmt.dynatrace.models.OperationDisplay
1327 :ivar origin: The intended executor of the operation; as in Resource Based Access Control
1328 (RBAC) and audit logs UX. Default value is "user,system". Known values are: "user", "system",
1329 and "user,system".
1330 :vartype origin: str or ~azure.mgmt.dynatrace.models.Origin
1331 :ivar action_type: Enum. Indicates the action type. "Internal" refers to actions that are for
1332 internal only APIs. "Internal"
1333 :vartype action_type: str or ~azure.mgmt.dynatrace.models.ActionType
1334 """
1335
1336 _validation = {
1337 "name": {"readonly": True},
1338 "is_data_action": {"readonly": True},
1339 "origin": {"readonly": True},
1340 "action_type": {"readonly": True},
1341 }
1342
1343 _attribute_map = {
1344 "name": {"key": "name", "type": "str"},
1345 "is_data_action": {"key": "isDataAction", "type": "bool"},
1346 "display": {"key": "display", "type": "OperationDisplay"},
1347 "origin": {"key": "origin", "type": "str"},
1348 "action_type": {"key": "actionType", "type": "str"},
1349 }
1350
1351 def __init__(self, *, display: Optional["_models.OperationDisplay"] = None, **kwargs: Any) -> None:
1352 """
1353 :keyword display: Localized display information for this particular operation.
1354 :paramtype display: ~azure.mgmt.dynatrace.models.OperationDisplay
1355 """
1356 super().__init__(**kwargs)
1357 self.name = None
1358 self.is_data_action = None
1359 self.display = display
1360 self.origin = None
1361 self.action_type = None
1362
1363
1364class OperationDisplay(_serialization.Model):
1365 """Localized display information for this particular operation.
1366
1367 Variables are only populated by the server, and will be ignored when sending a request.
1368
1369 :ivar provider: The localized friendly form of the resource provider name, e.g. "Microsoft
1370 Monitoring Insights" or "Microsoft Compute".
1371 :vartype provider: str
1372 :ivar resource: The localized friendly name of the resource type related to this operation.
1373 E.g. "Virtual Machines" or "Job Schedule Collections".
1374 :vartype resource: str
1375 :ivar operation: The concise, localized friendly name for the operation; suitable for
1376 dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine".
1377 :vartype operation: str
1378 :ivar description: The short, localized friendly description of the operation; suitable for
1379 tool tips and detailed views.
1380 :vartype description: str
1381 """
1382
1383 _validation = {
1384 "provider": {"readonly": True},
1385 "resource": {"readonly": True},
1386 "operation": {"readonly": True},
1387 "description": {"readonly": True},
1388 }
1389
1390 _attribute_map = {
1391 "provider": {"key": "provider", "type": "str"},
1392 "resource": {"key": "resource", "type": "str"},
1393 "operation": {"key": "operation", "type": "str"},
1394 "description": {"key": "description", "type": "str"},
1395 }
1396
1397 def __init__(self, **kwargs: Any) -> None:
1398 """ """
1399 super().__init__(**kwargs)
1400 self.provider = None
1401 self.resource = None
1402 self.operation = None
1403 self.description = None
1404
1405
1406class OperationListResult(_serialization.Model):
1407 """A list of REST API operations supported by an Azure Resource Provider. It contains an URL link
1408 to get the next set of results.
1409
1410 Variables are only populated by the server, and will be ignored when sending a request.
1411
1412 :ivar value: List of operations supported by the resource provider.
1413 :vartype value: list[~azure.mgmt.dynatrace.models.Operation]
1414 :ivar next_link: URL to get the next set of operation list results (if there are any).
1415 :vartype next_link: str
1416 """
1417
1418 _validation = {
1419 "value": {"readonly": True},
1420 "next_link": {"readonly": True},
1421 }
1422
1423 _attribute_map = {
1424 "value": {"key": "value", "type": "[Operation]"},
1425 "next_link": {"key": "nextLink", "type": "str"},
1426 }
1427
1428 def __init__(self, **kwargs: Any) -> None:
1429 """ """
1430 super().__init__(**kwargs)
1431 self.value = None
1432 self.next_link = None
1433
1434
1435class PlanData(_serialization.Model):
1436 """Billing plan information.
1437
1438 :ivar usage_type: different usage type like PAYG/COMMITTED. this could be enum.
1439 :vartype usage_type: str
1440 :ivar billing_cycle: different billing cycles like MONTHLY/WEEKLY. this could be enum.
1441 :vartype billing_cycle: str
1442 :ivar plan_details: plan id as published by Dynatrace.
1443 :vartype plan_details: str
1444 :ivar effective_date: date when plan was applied.
1445 :vartype effective_date: ~datetime.datetime
1446 """
1447
1448 _attribute_map = {
1449 "usage_type": {"key": "usageType", "type": "str"},
1450 "billing_cycle": {"key": "billingCycle", "type": "str"},
1451 "plan_details": {"key": "planDetails", "type": "str"},
1452 "effective_date": {"key": "effectiveDate", "type": "iso-8601"},
1453 }
1454
1455 def __init__(
1456 self,
1457 *,
1458 usage_type: Optional[str] = None,
1459 billing_cycle: Optional[str] = None,
1460 plan_details: Optional[str] = None,
1461 effective_date: Optional[datetime.datetime] = None,
1462 **kwargs: Any
1463 ) -> None:
1464 """
1465 :keyword usage_type: different usage type like PAYG/COMMITTED. this could be enum.
1466 :paramtype usage_type: str
1467 :keyword billing_cycle: different billing cycles like MONTHLY/WEEKLY. this could be enum.
1468 :paramtype billing_cycle: str
1469 :keyword plan_details: plan id as published by Dynatrace.
1470 :paramtype plan_details: str
1471 :keyword effective_date: date when plan was applied.
1472 :paramtype effective_date: ~datetime.datetime
1473 """
1474 super().__init__(**kwargs)
1475 self.usage_type = usage_type
1476 self.billing_cycle = billing_cycle
1477 self.plan_details = plan_details
1478 self.effective_date = effective_date
1479
1480
1481class SSODetailsRequest(_serialization.Model):
1482 """Request for getting sso details for a user.
1483
1484 All required parameters must be populated in order to send to Azure.
1485
1486 :ivar user_principal: user principal id of the user. Required.
1487 :vartype user_principal: str
1488 """
1489
1490 _validation = {
1491 "user_principal": {"required": True},
1492 }
1493
1494 _attribute_map = {
1495 "user_principal": {"key": "userPrincipal", "type": "str"},
1496 }
1497
1498 def __init__(self, *, user_principal: str, **kwargs: Any) -> None:
1499 """
1500 :keyword user_principal: user principal id of the user. Required.
1501 :paramtype user_principal: str
1502 """
1503 super().__init__(**kwargs)
1504 self.user_principal = user_principal
1505
1506
1507class SSODetailsResponse(_serialization.Model):
1508 """SSO details from the Dynatrace partner.
1509
1510 :ivar is_sso_enabled: Whether the SSO is enabled for this resource or not. Known values are:
1511 "Enabled" and "Disabled".
1512 :vartype is_sso_enabled: str or ~azure.mgmt.dynatrace.models.SSOStatus
1513 :ivar metadata_url: URL for Azure AD metadata.
1514 :vartype metadata_url: str
1515 :ivar single_sign_on_url: The login URL specific to this Dynatrace Environment.
1516 :vartype single_sign_on_url: str
1517 :ivar aad_domains: array of Aad(azure active directory) domains.
1518 :vartype aad_domains: list[str]
1519 :ivar admin_users: Array of admin user emails.
1520 :vartype admin_users: list[str]
1521 """
1522
1523 _attribute_map = {
1524 "is_sso_enabled": {"key": "isSsoEnabled", "type": "str"},
1525 "metadata_url": {"key": "metadataUrl", "type": "str"},
1526 "single_sign_on_url": {"key": "singleSignOnUrl", "type": "str"},
1527 "aad_domains": {"key": "aadDomains", "type": "[str]"},
1528 "admin_users": {"key": "adminUsers", "type": "[str]"},
1529 }
1530
1531 def __init__(
1532 self,
1533 *,
1534 is_sso_enabled: Optional[Union[str, "_models.SSOStatus"]] = None,
1535 metadata_url: Optional[str] = None,
1536 single_sign_on_url: Optional[str] = None,
1537 aad_domains: Optional[List[str]] = None,
1538 admin_users: Optional[List[str]] = None,
1539 **kwargs: Any
1540 ) -> None:
1541 """
1542 :keyword is_sso_enabled: Whether the SSO is enabled for this resource or not. Known values are:
1543 "Enabled" and "Disabled".
1544 :paramtype is_sso_enabled: str or ~azure.mgmt.dynatrace.models.SSOStatus
1545 :keyword metadata_url: URL for Azure AD metadata.
1546 :paramtype metadata_url: str
1547 :keyword single_sign_on_url: The login URL specific to this Dynatrace Environment.
1548 :paramtype single_sign_on_url: str
1549 :keyword aad_domains: array of Aad(azure active directory) domains.
1550 :paramtype aad_domains: list[str]
1551 :keyword admin_users: Array of admin user emails.
1552 :paramtype admin_users: list[str]
1553 """
1554 super().__init__(**kwargs)
1555 self.is_sso_enabled = is_sso_enabled
1556 self.metadata_url = metadata_url
1557 self.single_sign_on_url = single_sign_on_url
1558 self.aad_domains = aad_domains
1559 self.admin_users = admin_users
1560
1561
1562class SystemData(_serialization.Model):
1563 """Metadata pertaining to creation and last modification of the resource.
1564
1565 :ivar created_by: The identity that created the resource.
1566 :vartype created_by: str
1567 :ivar created_by_type: The type of identity that created the resource. Known values are:
1568 "User", "Application", "ManagedIdentity", and "Key".
1569 :vartype created_by_type: str or ~azure.mgmt.dynatrace.models.CreatedByType
1570 :ivar created_at: The timestamp of resource creation (UTC).
1571 :vartype created_at: ~datetime.datetime
1572 :ivar last_modified_by: The identity that last modified the resource.
1573 :vartype last_modified_by: str
1574 :ivar last_modified_by_type: The type of identity that last modified the resource. Known values
1575 are: "User", "Application", "ManagedIdentity", and "Key".
1576 :vartype last_modified_by_type: str or ~azure.mgmt.dynatrace.models.CreatedByType
1577 :ivar last_modified_at: The timestamp of resource last modification (UTC).
1578 :vartype last_modified_at: ~datetime.datetime
1579 """
1580
1581 _attribute_map = {
1582 "created_by": {"key": "createdBy", "type": "str"},
1583 "created_by_type": {"key": "createdByType", "type": "str"},
1584 "created_at": {"key": "createdAt", "type": "iso-8601"},
1585 "last_modified_by": {"key": "lastModifiedBy", "type": "str"},
1586 "last_modified_by_type": {"key": "lastModifiedByType", "type": "str"},
1587 "last_modified_at": {"key": "lastModifiedAt", "type": "iso-8601"},
1588 }
1589
1590 def __init__(
1591 self,
1592 *,
1593 created_by: Optional[str] = None,
1594 created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None,
1595 created_at: Optional[datetime.datetime] = None,
1596 last_modified_by: Optional[str] = None,
1597 last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None,
1598 last_modified_at: Optional[datetime.datetime] = None,
1599 **kwargs: Any
1600 ) -> None:
1601 """
1602 :keyword created_by: The identity that created the resource.
1603 :paramtype created_by: str
1604 :keyword created_by_type: The type of identity that created the resource. Known values are:
1605 "User", "Application", "ManagedIdentity", and "Key".
1606 :paramtype created_by_type: str or ~azure.mgmt.dynatrace.models.CreatedByType
1607 :keyword created_at: The timestamp of resource creation (UTC).
1608 :paramtype created_at: ~datetime.datetime
1609 :keyword last_modified_by: The identity that last modified the resource.
1610 :paramtype last_modified_by: str
1611 :keyword last_modified_by_type: The type of identity that last modified the resource. Known
1612 values are: "User", "Application", "ManagedIdentity", and "Key".
1613 :paramtype last_modified_by_type: str or ~azure.mgmt.dynatrace.models.CreatedByType
1614 :keyword last_modified_at: The timestamp of resource last modification (UTC).
1615 :paramtype last_modified_at: ~datetime.datetime
1616 """
1617 super().__init__(**kwargs)
1618 self.created_by = created_by
1619 self.created_by_type = created_by_type
1620 self.created_at = created_at
1621 self.last_modified_by = last_modified_by
1622 self.last_modified_by_type = last_modified_by_type
1623 self.last_modified_at = last_modified_at
1624
1625
1626class TagRule(ProxyResource):
1627 """Tag rules for a monitor resource.
1628
1629 Variables are only populated by the server, and will be ignored when sending a request.
1630
1631 :ivar id: Fully qualified resource ID for the resource. Ex -
1632 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
1633 :vartype id: str
1634 :ivar name: The name of the resource.
1635 :vartype name: str
1636 :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
1637 "Microsoft.Storage/storageAccounts".
1638 :vartype type: str
1639 :ivar system_data: System metadata for this resource.
1640 :vartype system_data: ~azure.mgmt.dynatrace.models.SystemData
1641 :ivar log_rules: Set of rules for sending logs for the Monitor resource.
1642 :vartype log_rules: ~azure.mgmt.dynatrace.models.LogRules
1643 :ivar metric_rules: Set of rules for sending metrics for the Monitor resource.
1644 :vartype metric_rules: ~azure.mgmt.dynatrace.models.MetricRules
1645 :ivar provisioning_state: Provisioning state of the resource. Known values are: "Accepted",
1646 "Creating", "Updating", "Deleting", "Succeeded", "Failed", "Canceled", "Deleted", and
1647 "NotSpecified".
1648 :vartype provisioning_state: str or ~azure.mgmt.dynatrace.models.ProvisioningState
1649 """
1650
1651 _validation = {
1652 "id": {"readonly": True},
1653 "name": {"readonly": True},
1654 "type": {"readonly": True},
1655 "system_data": {"readonly": True},
1656 "provisioning_state": {"readonly": True},
1657 }
1658
1659 _attribute_map = {
1660 "id": {"key": "id", "type": "str"},
1661 "name": {"key": "name", "type": "str"},
1662 "type": {"key": "type", "type": "str"},
1663 "system_data": {"key": "systemData", "type": "SystemData"},
1664 "log_rules": {"key": "properties.logRules", "type": "LogRules"},
1665 "metric_rules": {"key": "properties.metricRules", "type": "MetricRules"},
1666 "provisioning_state": {"key": "properties.provisioningState", "type": "str"},
1667 }
1668
1669 def __init__(
1670 self,
1671 *,
1672 log_rules: Optional["_models.LogRules"] = None,
1673 metric_rules: Optional["_models.MetricRules"] = None,
1674 **kwargs: Any
1675 ) -> None:
1676 """
1677 :keyword log_rules: Set of rules for sending logs for the Monitor resource.
1678 :paramtype log_rules: ~azure.mgmt.dynatrace.models.LogRules
1679 :keyword metric_rules: Set of rules for sending metrics for the Monitor resource.
1680 :paramtype metric_rules: ~azure.mgmt.dynatrace.models.MetricRules
1681 """
1682 super().__init__(**kwargs)
1683 self.system_data = None
1684 self.log_rules = log_rules
1685 self.metric_rules = metric_rules
1686 self.provisioning_state = None
1687
1688
1689class TagRuleListResult(_serialization.Model):
1690 """The response of a TagRule list operation.
1691
1692 All required parameters must be populated in order to send to Azure.
1693
1694 :ivar value: The items on this page. Required.
1695 :vartype value: list[~azure.mgmt.dynatrace.models.TagRule]
1696 :ivar next_link: The link to the next page of items.
1697 :vartype next_link: str
1698 """
1699
1700 _validation = {
1701 "value": {"required": True},
1702 }
1703
1704 _attribute_map = {
1705 "value": {"key": "value", "type": "[TagRule]"},
1706 "next_link": {"key": "nextLink", "type": "str"},
1707 }
1708
1709 def __init__(self, *, value: List["_models.TagRule"], next_link: Optional[str] = None, **kwargs: Any) -> None:
1710 """
1711 :keyword value: The items on this page. Required.
1712 :paramtype value: list[~azure.mgmt.dynatrace.models.TagRule]
1713 :keyword next_link: The link to the next page of items.
1714 :paramtype next_link: str
1715 """
1716 super().__init__(**kwargs)
1717 self.value = value
1718 self.next_link = next_link
1719
1720
1721class UserAssignedIdentity(_serialization.Model):
1722 """A managed identity assigned by the user.
1723
1724 All required parameters must be populated in order to send to Azure.
1725
1726 :ivar client_id: The active directory client identifier for this principal. Required.
1727 :vartype client_id: str
1728 :ivar principal_id: The active directory identifier for this principal. Required.
1729 :vartype principal_id: str
1730 """
1731
1732 _validation = {
1733 "client_id": {"required": True},
1734 "principal_id": {"required": True},
1735 }
1736
1737 _attribute_map = {
1738 "client_id": {"key": "clientId", "type": "str"},
1739 "principal_id": {"key": "principalId", "type": "str"},
1740 }
1741
1742 def __init__(self, *, client_id: str, principal_id: str, **kwargs: Any) -> None:
1743 """
1744 :keyword client_id: The active directory client identifier for this principal. Required.
1745 :paramtype client_id: str
1746 :keyword principal_id: The active directory identifier for this principal. Required.
1747 :paramtype principal_id: str
1748 """
1749 super().__init__(**kwargs)
1750 self.client_id = client_id
1751 self.principal_id = principal_id
1752
1753
1754class UserInfo(_serialization.Model):
1755 """User info.
1756
1757 :ivar first_name: First Name of the user.
1758 :vartype first_name: str
1759 :ivar last_name: Last Name of the user.
1760 :vartype last_name: str
1761 :ivar email_address: Email of the user used by Dynatrace for contacting them if needed.
1762 :vartype email_address: str
1763 :ivar phone_number: Phone number of the user used by Dynatrace for contacting them if needed.
1764 :vartype phone_number: str
1765 :ivar country: Country of the user.
1766 :vartype country: str
1767 """
1768
1769 _validation = {
1770 "email_address": {"pattern": r"^[A-Za-z0-9._%+-]+@(?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,}$"},
1771 "phone_number": {"max_length": 40},
1772 }
1773
1774 _attribute_map = {
1775 "first_name": {"key": "firstName", "type": "str"},
1776 "last_name": {"key": "lastName", "type": "str"},
1777 "email_address": {"key": "emailAddress", "type": "str"},
1778 "phone_number": {"key": "phoneNumber", "type": "str"},
1779 "country": {"key": "country", "type": "str"},
1780 }
1781
1782 def __init__(
1783 self,
1784 *,
1785 first_name: Optional[str] = None,
1786 last_name: Optional[str] = None,
1787 email_address: Optional[str] = None,
1788 phone_number: Optional[str] = None,
1789 country: Optional[str] = None,
1790 **kwargs: Any
1791 ) -> None:
1792 """
1793 :keyword first_name: First Name of the user.
1794 :paramtype first_name: str
1795 :keyword last_name: Last Name of the user.
1796 :paramtype last_name: str
1797 :keyword email_address: Email of the user used by Dynatrace for contacting them if needed.
1798 :paramtype email_address: str
1799 :keyword phone_number: Phone number of the user used by Dynatrace for contacting them if
1800 needed.
1801 :paramtype phone_number: str
1802 :keyword country: Country of the user.
1803 :paramtype country: str
1804 """
1805 super().__init__(**kwargs)
1806 self.first_name = first_name
1807 self.last_name = last_name
1808 self.email_address = email_address
1809 self.phone_number = phone_number
1810 self.country = country
1811
1812
1813class VMExtensionPayload(_serialization.Model):
1814 """Response of payload to be passed while installing VM agent.
1815
1816 :ivar ingestion_key: Ingestion key of the environment.
1817 :vartype ingestion_key: str
1818 :ivar environment_id: Id of the environment created.
1819 :vartype environment_id: str
1820 """
1821
1822 _attribute_map = {
1823 "ingestion_key": {"key": "ingestionKey", "type": "str"},
1824 "environment_id": {"key": "environmentId", "type": "str"},
1825 }
1826
1827 def __init__(
1828 self, *, ingestion_key: Optional[str] = None, environment_id: Optional[str] = None, **kwargs: Any
1829 ) -> None:
1830 """
1831 :keyword ingestion_key: Ingestion key of the environment.
1832 :paramtype ingestion_key: str
1833 :keyword environment_id: Id of the environment created.
1834 :paramtype environment_id: str
1835 """
1836 super().__init__(**kwargs)
1837 self.ingestion_key = ingestion_key
1838 self.environment_id = environment_id
1839
1840
1841class VMHostsListResponse(_serialization.Model):
1842 """Response of a list VM Host Operation.
1843
1844 :ivar value: The items on this page.
1845 :vartype value: list[~azure.mgmt.dynatrace.models.VMInfo]
1846 :ivar next_link: The link to the next page of items.
1847 :vartype next_link: str
1848 """
1849
1850 _attribute_map = {
1851 "value": {"key": "value", "type": "[VMInfo]"},
1852 "next_link": {"key": "nextLink", "type": "str"},
1853 }
1854
1855 def __init__(
1856 self, *, value: Optional[List["_models.VMInfo"]] = None, next_link: Optional[str] = None, **kwargs: Any
1857 ) -> None:
1858 """
1859 :keyword value: The items on this page.
1860 :paramtype value: list[~azure.mgmt.dynatrace.models.VMInfo]
1861 :keyword next_link: The link to the next page of items.
1862 :paramtype next_link: str
1863 """
1864 super().__init__(**kwargs)
1865 self.value = value
1866 self.next_link = next_link
1867
1868
1869class VMInfo(_serialization.Model):
1870 """Details of VM Resource having Dynatrace OneAgent installed.
1871
1872 :ivar resource_id: Azure VM resource ID.
1873 :vartype resource_id: str
1874 :ivar version: Version of the Dynatrace agent installed on the VM.
1875 :vartype version: str
1876 :ivar monitoring_type: The monitoring mode of OneAgent. Known values are:
1877 "CLOUD_INFRASTRUCTURE" and "FULL_STACK".
1878 :vartype monitoring_type: str or ~azure.mgmt.dynatrace.models.MonitoringType
1879 :ivar auto_update_setting: Update settings of OneAgent. Known values are: "ENABLED" and
1880 "DISABLED".
1881 :vartype auto_update_setting: str or ~azure.mgmt.dynatrace.models.AutoUpdateSetting
1882 :ivar update_status: The current update status of OneAgent. Known values are: "INCOMPATIBLE",
1883 "OUTDATED", "SCHEDULED", "SUPPRESSED", "UNKNOWN", "UP2DATE", "UPDATE_IN_PROGRESS",
1884 "UPDATE_PENDING", and "UPDATE_PROBLEM".
1885 :vartype update_status: str or ~azure.mgmt.dynatrace.models.UpdateStatus
1886 :ivar availability_state: The availability state of OneAgent. Known values are: "CRASHED",
1887 "LOST", "MONITORED", "PRE_MONITORED", "SHUTDOWN", "UNEXPECTED_SHUTDOWN", "UNKNOWN", and
1888 "UNMONITORED".
1889 :vartype availability_state: str or ~azure.mgmt.dynatrace.models.AvailabilityState
1890 :ivar log_module: Tells whether log modules are enabled or not. Known values are: "ENABLED" and
1891 "DISABLED".
1892 :vartype log_module: str or ~azure.mgmt.dynatrace.models.LogModule
1893 :ivar host_group: The name of the host group.
1894 :vartype host_group: str
1895 :ivar host_name: The name of the host.
1896 :vartype host_name: str
1897 """
1898
1899 _attribute_map = {
1900 "resource_id": {"key": "resourceId", "type": "str"},
1901 "version": {"key": "version", "type": "str"},
1902 "monitoring_type": {"key": "monitoringType", "type": "str"},
1903 "auto_update_setting": {"key": "autoUpdateSetting", "type": "str"},
1904 "update_status": {"key": "updateStatus", "type": "str"},
1905 "availability_state": {"key": "availabilityState", "type": "str"},
1906 "log_module": {"key": "logModule", "type": "str"},
1907 "host_group": {"key": "hostGroup", "type": "str"},
1908 "host_name": {"key": "hostName", "type": "str"},
1909 }
1910
1911 def __init__(
1912 self,
1913 *,
1914 resource_id: Optional[str] = None,
1915 version: Optional[str] = None,
1916 monitoring_type: Optional[Union[str, "_models.MonitoringType"]] = None,
1917 auto_update_setting: Optional[Union[str, "_models.AutoUpdateSetting"]] = None,
1918 update_status: Optional[Union[str, "_models.UpdateStatus"]] = None,
1919 availability_state: Optional[Union[str, "_models.AvailabilityState"]] = None,
1920 log_module: Optional[Union[str, "_models.LogModule"]] = None,
1921 host_group: Optional[str] = None,
1922 host_name: Optional[str] = None,
1923 **kwargs: Any
1924 ) -> None:
1925 """
1926 :keyword resource_id: Azure VM resource ID.
1927 :paramtype resource_id: str
1928 :keyword version: Version of the Dynatrace agent installed on the VM.
1929 :paramtype version: str
1930 :keyword monitoring_type: The monitoring mode of OneAgent. Known values are:
1931 "CLOUD_INFRASTRUCTURE" and "FULL_STACK".
1932 :paramtype monitoring_type: str or ~azure.mgmt.dynatrace.models.MonitoringType
1933 :keyword auto_update_setting: Update settings of OneAgent. Known values are: "ENABLED" and
1934 "DISABLED".
1935 :paramtype auto_update_setting: str or ~azure.mgmt.dynatrace.models.AutoUpdateSetting
1936 :keyword update_status: The current update status of OneAgent. Known values are:
1937 "INCOMPATIBLE", "OUTDATED", "SCHEDULED", "SUPPRESSED", "UNKNOWN", "UP2DATE",
1938 "UPDATE_IN_PROGRESS", "UPDATE_PENDING", and "UPDATE_PROBLEM".
1939 :paramtype update_status: str or ~azure.mgmt.dynatrace.models.UpdateStatus
1940 :keyword availability_state: The availability state of OneAgent. Known values are: "CRASHED",
1941 "LOST", "MONITORED", "PRE_MONITORED", "SHUTDOWN", "UNEXPECTED_SHUTDOWN", "UNKNOWN", and
1942 "UNMONITORED".
1943 :paramtype availability_state: str or ~azure.mgmt.dynatrace.models.AvailabilityState
1944 :keyword log_module: Tells whether log modules are enabled or not. Known values are: "ENABLED"
1945 and "DISABLED".
1946 :paramtype log_module: str or ~azure.mgmt.dynatrace.models.LogModule
1947 :keyword host_group: The name of the host group.
1948 :paramtype host_group: str
1949 :keyword host_name: The name of the host.
1950 :paramtype host_name: str
1951 """
1952 super().__init__(**kwargs)
1953 self.resource_id = resource_id
1954 self.version = version
1955 self.monitoring_type = monitoring_type
1956 self.auto_update_setting = auto_update_setting
1957 self.update_status = update_status
1958 self.availability_state = availability_state
1959 self.log_module = log_module
1960 self.host_group = host_group
1961 self.host_name = host_name