/** * Dynatrace Configuration API * Documentation of the Dynatrace Configuration API. Refer to the [help page](https://www.dynatrace.com/support/help/shortlink/config-api) to read about use-cases and examples. Notes about compatibility: * Operations marked as early adopter or preview may be changed in non-compatible ways, although we try to avoid this. * We may add new enum constants without incrementing the API version; thus, clients need to handle unknown enum constants gracefully. * * The version of the OpenAPI document: 1.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { RequestFile } from '../api'; import { AdvancedJavaScriptTagSettings } from './advancedJavaScriptTagSettings'; import { ContentCapture } from './contentCapture'; import { JavaScriptFrameworkSupport } from './javaScriptFrameworkSupport'; import { JavaScriptInjectionRules } from './javaScriptInjectionRules'; import { WebApplicationConfigBrowserRestrictionSettings } from './webApplicationConfigBrowserRestrictionSettings'; import { WebApplicationConfigIpAddressRestrictionSettings } from './webApplicationConfigIpAddressRestrictionSettings'; /** * Real user monitoring settings. */ export class MonitoringSettings { /** * `fetch()` request capture enabled/disabled. */ 'fetchRequests': boolean; /** * `XmlHttpRequest` support enabled/disabled. */ 'xmlHttpRequest': boolean; 'javaScriptFrameworkSupport': JavaScriptFrameworkSupport; 'contentCapture': ContentCapture; /** * You can exclude some actions from becoming XHR actions. Put a regular expression, matching all the required URLs, here. If noting specified the feature is disabled. */ 'excludeXhrRegex': string; /** * JavaScript injection mode. */ 'injectionMode': MonitoringSettings.InjectionModeEnum; /** * Add the cross origin = anonymous attribute to capture JavaScript error messages and W3C resource timings. */ 'addCrossOriginAnonymousAttribute'?: boolean; /** * Time duration for the cache settings. */ 'scriptTagCacheDurationInHours'?: number; /** * The location of your application’s custom JavaScript library file. If nothing specified the root directory of your web server is used. Only supported by auto-injected applications. */ 'libraryFileLocation'?: string; /** * The location to send monitoring data from the JavaScript tag. Specify either a relative or an absolute URL. If you use an absolute URL, data will be sent using CORS. Only supported by auto-injected applications. */ 'monitoringDataPath'?: string; /** * Additional JavaScript tag properties that are specific to your application. To do this, type key=value pairs separated using a (|) symbol. */ 'customConfigurationProperties': string; /** * Path to identify the server’s request ID. */ 'serverRequestPathId': string; /** * Secure attribute usage for Dynatrace cookies enabled/disabled. */ 'secureCookieAttribute': boolean; /** * Domain for cookie placement. */ 'cookiePlacementDomain': string; /** * Optimize the value of cache control headers for use with Dynatrace real user monitoring enabled/disabled. */ 'cacheControlHeaderOptimizations': boolean; 'advancedJavaScriptTagSettings': AdvancedJavaScriptTagSettings; 'browserRestrictionSettings'?: WebApplicationConfigBrowserRestrictionSettings; 'ipAddressRestrictionSettings'?: WebApplicationConfigIpAddressRestrictionSettings; /** * Java script injection rules. */ 'javaScriptInjectionRules'?: Array; static discriminator: string | undefined = undefined; static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [ { "name": "fetchRequests", "baseName": "fetchRequests", "type": "boolean" }, { "name": "xmlHttpRequest", "baseName": "xmlHttpRequest", "type": "boolean" }, { "name": "javaScriptFrameworkSupport", "baseName": "javaScriptFrameworkSupport", "type": "JavaScriptFrameworkSupport" }, { "name": "contentCapture", "baseName": "contentCapture", "type": "ContentCapture" }, { "name": "excludeXhrRegex", "baseName": "excludeXhrRegex", "type": "string" }, { "name": "injectionMode", "baseName": "injectionMode", "type": "MonitoringSettings.InjectionModeEnum" }, { "name": "addCrossOriginAnonymousAttribute", "baseName": "addCrossOriginAnonymousAttribute", "type": "boolean" }, { "name": "scriptTagCacheDurationInHours", "baseName": "scriptTagCacheDurationInHours", "type": "number" }, { "name": "libraryFileLocation", "baseName": "libraryFileLocation", "type": "string" }, { "name": "monitoringDataPath", "baseName": "monitoringDataPath", "type": "string" }, { "name": "customConfigurationProperties", "baseName": "customConfigurationProperties", "type": "string" }, { "name": "serverRequestPathId", "baseName": "serverRequestPathId", "type": "string" }, { "name": "secureCookieAttribute", "baseName": "secureCookieAttribute", "type": "boolean" }, { "name": "cookiePlacementDomain", "baseName": "cookiePlacementDomain", "type": "string" }, { "name": "cacheControlHeaderOptimizations", "baseName": "cacheControlHeaderOptimizations", "type": "boolean" }, { "name": "advancedJavaScriptTagSettings", "baseName": "advancedJavaScriptTagSettings", "type": "AdvancedJavaScriptTagSettings" }, { "name": "browserRestrictionSettings", "baseName": "browserRestrictionSettings", "type": "WebApplicationConfigBrowserRestrictionSettings" }, { "name": "ipAddressRestrictionSettings", "baseName": "ipAddressRestrictionSettings", "type": "WebApplicationConfigIpAddressRestrictionSettings" }, { "name": "javaScriptInjectionRules", "baseName": "javaScriptInjectionRules", "type": "Array" } ]; static getAttributeTypeMap() { return MonitoringSettings.attributeTypeMap; } } export namespace MonitoringSettings { export enum InjectionModeEnum { CODESNIPPET = 'CODE_SNIPPET', CODESNIPPETASYNC = 'CODE_SNIPPET_ASYNC', INLINECODE = 'INLINE_CODE', JAVASCRIPTTAG = 'JAVASCRIPT_TAG' } }