@dynatrace/dtrum-api-types 1.319.3 → 1.321.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dtrum.d.ts +464 -277
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
This package contains the Typescript type information for the dtrum.* API of the RUM JavaScript.
|
|
3
3
|
|
|
4
4
|
Keep in mind that when the RUM JavaScript is updated, this type package might not provide accurate types.
|
|
5
|
-
Version: 1.
|
|
5
|
+
Version: 1.321.4
|
|
6
6
|
|
|
7
7
|
## Installation
|
|
8
8
|
> npm install --save-dev @dynatrace/dtrum-api-types
|
package/dtrum.d.ts
CHANGED
|
@@ -1,287 +1,372 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
* @param actionId the ID for which the leave is called
|
|
5
|
-
* @param stoptime start resp. endtime of the action
|
|
6
|
-
* @param isRootAction true if the action with the provided ID is a root action
|
|
2
|
+
* @inline
|
|
3
|
+
* @ignore
|
|
7
4
|
*/
|
|
8
5
|
export interface ActionLeaveListener {
|
|
9
6
|
(actionId: number, stoptime: number, isRootAction: boolean): void;
|
|
10
7
|
}
|
|
11
8
|
|
|
12
9
|
/**
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* @param actionId the ID for which the enter is called
|
|
16
|
-
* @param starttime start resp. endtime of the action
|
|
17
|
-
* @param isRootAction true if the action with the provided ID is a root action
|
|
18
|
-
* @param [element] the element which resulted in the initiation of the event
|
|
10
|
+
* @inline
|
|
11
|
+
* @ignore
|
|
19
12
|
*/
|
|
20
|
-
export
|
|
21
|
-
(actionId: number, starttime: number, isRootAction: boolean, element?: EventTarget | string): void;
|
|
22
|
-
}
|
|
13
|
+
export type ActionEnterListener = (actionId: number, starttime: number, isRootAction: boolean, element?: EventTarget | string) => void;
|
|
23
14
|
|
|
24
15
|
/**
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* @param name New view name. Usually it matches the location.pathname or location.hash
|
|
28
|
-
* @param group New view group. It is recommended to contain the dynamic placeholders of the view name.
|
|
29
|
-
* For example, if the view name is "/books/123", view group should be "books/:bookId" or similar.
|
|
30
|
-
* If null or undefined is passed in, the dynatrace server will calculate the group based on the name.
|
|
16
|
+
* @inline
|
|
17
|
+
* @ignore
|
|
31
18
|
*/
|
|
32
19
|
export interface APIPage {
|
|
20
|
+
/**
|
|
21
|
+
* The name of the new view, typically matching the location.pathname or location.hash.
|
|
22
|
+
*/
|
|
33
23
|
name: string;
|
|
24
|
+
/**
|
|
25
|
+
* The group of the new view, recommended to include dynamic placeholders of the view name.
|
|
26
|
+
* For example, if the view name is "/books/123", the view group should be "books/:bookId" or similar.
|
|
27
|
+
* If null or undefined, the Dynatrace server calculates the group based on the name.
|
|
28
|
+
*/
|
|
34
29
|
group?: string;
|
|
35
30
|
}
|
|
36
31
|
|
|
32
|
+
/**
|
|
33
|
+
* @ignore
|
|
34
|
+
* @inline
|
|
35
|
+
*/
|
|
37
36
|
export type PageLeaveListener = (unloadRunning: boolean) => void;
|
|
38
37
|
|
|
38
|
+
/**
|
|
39
|
+
* @ignore
|
|
40
|
+
* @inline
|
|
41
|
+
*/
|
|
39
42
|
export type AllowedMapTypes = Date | string | number;
|
|
40
43
|
|
|
41
44
|
// this is used for dtrum doc
|
|
45
|
+
/**
|
|
46
|
+
* @category API
|
|
47
|
+
*/
|
|
42
48
|
// eslint-disable-next-line @typescript-eslint/naming-convention -- dtrum is fine here
|
|
43
49
|
export type dtrum = DtrumApi;
|
|
50
|
+
/**
|
|
51
|
+
* @category API
|
|
52
|
+
*/
|
|
53
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention -- dynatrace is fine here
|
|
54
|
+
export type dynatrace = DynatraceApi;
|
|
44
55
|
|
|
56
|
+
/**
|
|
57
|
+
* @category Custom Reporting
|
|
58
|
+
* @typeParam S - The type of the captured property.
|
|
59
|
+
*/
|
|
45
60
|
export interface Property<S> {
|
|
61
|
+
/** The value of the property. */
|
|
46
62
|
value: S;
|
|
63
|
+
/** Indicates if the property is public. If not set to true, the value will be sent as masked (dT_pv) in doNotTrack
|
|
64
|
+
* mode. */
|
|
47
65
|
public?: boolean;
|
|
48
66
|
}
|
|
49
67
|
|
|
68
|
+
/**
|
|
69
|
+
* @category Custom Reporting
|
|
70
|
+
*/
|
|
50
71
|
export interface PropertyMap<S extends AllowedMapTypes> {
|
|
72
|
+
/** A map of properties, keyed by string. */
|
|
51
73
|
[key: string]: Property<S> | S;
|
|
52
74
|
}
|
|
53
75
|
|
|
76
|
+
/**
|
|
77
|
+
* @category Custom Reporting
|
|
78
|
+
*/
|
|
54
79
|
export interface FailedProperty {
|
|
80
|
+
/** The key of the failed property. */
|
|
55
81
|
key: string;
|
|
82
|
+
/** The reason for the failure. */
|
|
56
83
|
reason: string;
|
|
57
84
|
}
|
|
58
85
|
|
|
86
|
+
/**
|
|
87
|
+
* @category Custom Reporting
|
|
88
|
+
*/
|
|
59
89
|
export interface SuccessfulProperty {
|
|
90
|
+
/** The key of the successfully collected property. */
|
|
60
91
|
key: string;
|
|
92
|
+
/** The value of the successfully collected property. */
|
|
61
93
|
value: AllowedMapTypes;
|
|
62
94
|
}
|
|
63
95
|
|
|
96
|
+
/**
|
|
97
|
+
* @category Custom Reporting
|
|
98
|
+
*/
|
|
64
99
|
export interface PropertiesSendingReport {
|
|
100
|
+
/** A list of properties that failed to send, with reasons. */
|
|
65
101
|
failedProperties: FailedProperty[];
|
|
102
|
+
/** A list of properties that were successfully sent. */
|
|
66
103
|
sentProperties: SuccessfulProperty[];
|
|
104
|
+
/** Additional information about the sending process. */
|
|
67
105
|
info: string;
|
|
68
106
|
}
|
|
69
107
|
|
|
108
|
+
/**
|
|
109
|
+
* @category Custom Reporting
|
|
110
|
+
*/
|
|
70
111
|
export interface PropertyObject {
|
|
112
|
+
/** A map of Java long properties. */
|
|
71
113
|
javaLong?: PropertyMap<number>;
|
|
114
|
+
/** A map of date properties. */
|
|
72
115
|
date?: PropertyMap<Date>;
|
|
116
|
+
/** A map of short string properties. */
|
|
73
117
|
shortString?: PropertyMap<string>;
|
|
118
|
+
/** A map of Java double properties. */
|
|
74
119
|
javaDouble?: PropertyMap<number>;
|
|
75
120
|
}
|
|
76
121
|
|
|
122
|
+
/**
|
|
123
|
+
* @category Actions
|
|
124
|
+
*/
|
|
77
125
|
export interface DtRumUserInput {
|
|
126
|
+
/** The target element or string that initiated the input. */
|
|
78
127
|
target: EventTarget | string | undefined;
|
|
128
|
+
/** The name of the user input. */
|
|
79
129
|
name: string;
|
|
130
|
+
/** Additional information about the input. */
|
|
80
131
|
info: string;
|
|
132
|
+
/** The title of the current document. */
|
|
81
133
|
title: string;
|
|
82
134
|
}
|
|
83
135
|
|
|
84
136
|
/**
|
|
85
|
-
*
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
/** Stylesheet resource (e.g. .css) */
|
|
89
|
-
CSS = "c",
|
|
90
|
-
/** Custom resource */
|
|
91
|
-
CUSTOM = "y",
|
|
92
|
-
/** Image resource (e.g. .jpg, .png) */
|
|
93
|
-
IMAGES = "i",
|
|
94
|
-
/** Undefined resource */
|
|
95
|
-
OTHER = "o",
|
|
96
|
-
/** Script resource (e.g. .js) */
|
|
97
|
-
SCRIPTS = "s"
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Provides information about call results to actionName.
|
|
137
|
+
* Provides information about call results to {@link dtrum.actionName}.
|
|
138
|
+
*
|
|
139
|
+
* @category Actions
|
|
102
140
|
*/
|
|
103
141
|
export const enum ActionNameResult {
|
|
104
|
-
/** Action naming was successful with the provided name */
|
|
142
|
+
/** Action naming was successful with the provided name. */
|
|
105
143
|
SUCCESS = 0,
|
|
106
|
-
/** The action with the provided ID was not found, or there was no currently active action */
|
|
144
|
+
/** The action with the provided ID was not found, or there was no currently active action. */
|
|
107
145
|
ACTION_NOT_FOUND = 1,
|
|
108
|
-
/** The provided action name was not of type string */
|
|
146
|
+
/** The provided action name was not of type string. */
|
|
109
147
|
INVALID_ACTION_NAME = 2,
|
|
110
|
-
/** The provided action ID was provided, not of type number */
|
|
148
|
+
/** The provided action ID was provided, not of type number. */
|
|
111
149
|
INVALID_ACTION_ID = 3
|
|
112
150
|
}
|
|
113
151
|
|
|
152
|
+
/**
|
|
153
|
+
* @category Custom Reporting
|
|
154
|
+
*/
|
|
114
155
|
export interface MetaData {
|
|
115
156
|
/**
|
|
116
157
|
* An internally used id
|
|
117
158
|
*
|
|
118
|
-
* @
|
|
159
|
+
* @ignore
|
|
119
160
|
*/
|
|
120
161
|
id: string;
|
|
121
162
|
/**
|
|
122
|
-
* Specifies where the metadata is collected from:
|
|
123
|
-
*
|
|
124
|
-
*
|
|
125
|
-
*
|
|
126
|
-
*
|
|
127
|
-
*
|
|
163
|
+
* Specifies where the metadata is collected from, such as:
|
|
164
|
+
* - CSS Selector
|
|
165
|
+
* - JavaScript Variable
|
|
166
|
+
* - Cookie
|
|
167
|
+
* - Query String
|
|
168
|
+
* - JavaScript Function
|
|
128
169
|
*/
|
|
129
170
|
type: string;
|
|
130
171
|
/**
|
|
131
|
-
*
|
|
172
|
+
* Describes how the metadata can be retrieved (e.g., cookie name, CSS selector, JavaScript variable name).
|
|
132
173
|
*/
|
|
133
174
|
expression: string;
|
|
134
175
|
/**
|
|
135
|
-
* The current value for the given expression
|
|
176
|
+
* The current value for the given expression.
|
|
136
177
|
*/
|
|
137
178
|
value: string | null;
|
|
138
179
|
/**
|
|
139
|
-
*
|
|
180
|
+
* Additional information about the captured value.
|
|
140
181
|
*/
|
|
141
182
|
info?: string;
|
|
142
183
|
}
|
|
143
184
|
|
|
185
|
+
/**
|
|
186
|
+
* @inline
|
|
187
|
+
* @ignore
|
|
188
|
+
*/
|
|
144
189
|
export interface DtrumApi {
|
|
145
190
|
/**
|
|
146
|
-
* Enables
|
|
191
|
+
* Enables or disables automatic action detection. Use this method when you want to manually instrument your application.
|
|
147
192
|
*
|
|
193
|
+
* @group Actions
|
|
148
194
|
* @see {@link enterAction}
|
|
149
195
|
* @see {@link leaveAction}
|
|
150
|
-
* @param enabled
|
|
196
|
+
* @param enabled Specifies whether automatic action detection should be enabled or disabled.
|
|
151
197
|
*/
|
|
152
198
|
setAutomaticActionDetection(enabled: boolean): void;
|
|
153
199
|
/**
|
|
154
|
-
*
|
|
155
|
-
* The load end event must be set
|
|
156
|
-
*
|
|
200
|
+
* Prevents RUM JavaScript from automatically detecting the load end event.
|
|
201
|
+
* The load end event must be explicitly set using {@link signalLoadEnd}.
|
|
202
|
+
* Call this method immediately after injecting RUM JavaScript.
|
|
157
203
|
*
|
|
204
|
+
* @group Actions
|
|
158
205
|
*/
|
|
159
206
|
setLoadEndManually(): void;
|
|
160
207
|
/**
|
|
161
208
|
* Signals that the page has finished loading.
|
|
162
209
|
* Use in combination with {@link setLoadEndManually} to define your own load end times.
|
|
163
210
|
*
|
|
211
|
+
* @group Actions
|
|
164
212
|
* @see {@link setLoadEndManually}
|
|
165
213
|
*/
|
|
166
214
|
signalLoadEnd(): void;
|
|
167
215
|
/**
|
|
168
|
-
*
|
|
169
|
-
* For example, use to mark your 404 pages that respond with
|
|
170
|
-
*
|
|
216
|
+
* Reports the HTTP status code and a custom message for the response of the current page.
|
|
217
|
+
* For example, use this method to mark your 404 pages that respond with an HTTP status code of 200.
|
|
218
|
+
* This method must be called before the page's onload event finishes; otherwise, the information will be discarded.
|
|
171
219
|
*
|
|
172
|
-
* @
|
|
173
|
-
* @param
|
|
174
|
-
* @
|
|
220
|
+
* @group Custom Reporting
|
|
221
|
+
* @param responseCode The HTTP status code to set.
|
|
222
|
+
* @param message An additional informational message.
|
|
223
|
+
* @returns Returns false if the values were incorrect or the method was called too late; otherwise, returns true.
|
|
175
224
|
*/
|
|
176
225
|
markAsErrorPage(responseCode: number, message: string): boolean;
|
|
177
226
|
/**
|
|
178
227
|
* Reports the HTTP status code and an additional message for the response of the current XHR action.
|
|
179
|
-
* For example, use when the HTTP status code of your XHR response
|
|
180
|
-
*
|
|
181
|
-
* Needs to be called before the XHR action is finished and all listeners have been invoked.
|
|
228
|
+
* For example, use this method when the HTTP status code of your XHR response is 200, but the server's result indicates a failed request.
|
|
229
|
+
* This method must be called before the XHR action finishes and all listeners have been invoked.
|
|
182
230
|
*
|
|
183
|
-
* @
|
|
184
|
-
* @param
|
|
185
|
-
* @param
|
|
186
|
-
*
|
|
187
|
-
* @returns false if the values were incorrect or the
|
|
231
|
+
* @group Custom Reporting
|
|
232
|
+
* @param responseCode The HTTP status code of the current XHR action.
|
|
233
|
+
* @param message An additional informational message.
|
|
234
|
+
* @param parentActionId The optional ID of the action to mark as failed. If not provided, the currently open action is used.
|
|
235
|
+
* @returns Returns false if the values were incorrect or the method was called too late; otherwise, returns true.
|
|
188
236
|
*/
|
|
189
237
|
markXHRFailed(responseCode: number, message: string, parentActionId?: number): boolean;
|
|
190
238
|
/**
|
|
191
|
-
* Forces
|
|
192
|
-
* For example, use before a window unload event by adding a {@link addPageLeavingListener}.
|
|
239
|
+
* Forces the sending of a beacon to ensure actions are not lost.
|
|
240
|
+
* For example, use this method before a window unload event by adding a {@link addPageLeavingListener}.
|
|
193
241
|
*
|
|
242
|
+
* @group Lifecycle
|
|
194
243
|
* @see {@link addPageLeavingListener}
|
|
195
|
-
* @param forceSync DEPRECATED: not used anymore and has no effect if provided.
|
|
196
|
-
* @param sendPreview
|
|
197
|
-
* @param killUnfinished
|
|
244
|
+
* @param forceSync DEPRECATED: This parameter is not used anymore and has no effect if provided.
|
|
245
|
+
* @param sendPreview Forces the sending of preview beacons containing actions that have not yet been closed.
|
|
246
|
+
* @param killUnfinished Terminates unfinished actions and sends them immediately. Handle with care, as actions might be inaccurate.
|
|
198
247
|
*/
|
|
199
248
|
sendBeacon(forceSync: boolean, sendPreview: boolean, killUnfinished: boolean): void;
|
|
200
249
|
/**
|
|
201
|
-
* Enters a new custom action. Use
|
|
202
|
-
*
|
|
250
|
+
* Enters a new custom action. Use this method to create a custom action.<br />
|
|
251
|
+
* This method must be called before {@link leaveAction}, which closes the custom action.
|
|
203
252
|
*
|
|
253
|
+
* @group Actions
|
|
204
254
|
* @see {@link leaveAction}
|
|
205
|
-
* @param actionName
|
|
206
|
-
* @param actionType DEPRECATED: not used
|
|
207
|
-
* @param startTime
|
|
208
|
-
* @param sourceUrl
|
|
209
|
-
* @returns ID of the created action or 0 if action was not created.
|
|
255
|
+
* @param actionName The name of the action.
|
|
256
|
+
* @param actionType DEPRECATED: This parameter is not used anymore and has no effect if provided.
|
|
257
|
+
* @param startTime The timestamp in milliseconds. If falsy, the current time is used.
|
|
258
|
+
* @param sourceUrl The source URL for the action.
|
|
259
|
+
* @returns The ID of the created action, or 0 if the action was not created.
|
|
210
260
|
*/
|
|
211
261
|
enterAction(actionName: string, actionType?: string, startTime?: number, sourceUrl?: string): number;
|
|
212
262
|
/**
|
|
213
|
-
* Attaches a listener that
|
|
214
|
-
* Remove the listener if not needed or
|
|
215
|
-
*
|
|
216
|
-
*
|
|
217
|
-
* action naming or action properties.
|
|
263
|
+
* Attaches a listener that is called while entering an action.<br />
|
|
264
|
+
* Remove the listener if not needed, or filter actions using {@link addActionProperties} to prevent sending the
|
|
265
|
+
* same action property for every action. Use this method to hook into the automatic action creation event to
|
|
266
|
+
* influence related concepts such as action naming or action properties.
|
|
218
267
|
*
|
|
268
|
+
* @group Actions
|
|
219
269
|
* @see {@link removeEnterActionListener}
|
|
220
270
|
* @see {@link actionName}
|
|
221
271
|
* @see {@link addActionProperties}
|
|
222
|
-
* @param listener A function that will be called when entering a new action
|
|
223
|
-
*/
|
|
224
|
-
addEnterActionListener(listener: ActionEnterListener): void;
|
|
225
|
-
/**
|
|
226
|
-
* Removes a previously attached listener that detects the enter action event
|
|
227
|
-
*
|
|
228
|
-
* @param listener The reference to the listener that needs to be removed
|
|
229
272
|
*/
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
273
|
+
addEnterActionListener(
|
|
274
|
+
/**
|
|
275
|
+
* The callback function to be triggered when an action is entered.
|
|
276
|
+
*
|
|
277
|
+
* @param actionId The ID of the action being entered.
|
|
278
|
+
* @param starttime The start time of the action.
|
|
279
|
+
* @param isRootAction Indicates if the action is a root action.
|
|
280
|
+
* @param element The element that initiated the event.
|
|
281
|
+
*/
|
|
282
|
+
listener: ActionEnterListener
|
|
283
|
+
): void;
|
|
284
|
+
/**
|
|
285
|
+
* Removes a previously attached listener that detects the enter action event.
|
|
286
|
+
*
|
|
287
|
+
* @group Actions
|
|
288
|
+
* @see {@link addEnterActionListener}
|
|
289
|
+
* @param listener The reference to the listener to be removed.
|
|
290
|
+
*/
|
|
291
|
+
removeEnterActionListener(
|
|
292
|
+
/**
|
|
293
|
+
* The callback function to be triggered when an action is entered.
|
|
294
|
+
*
|
|
295
|
+
* @param actionId The ID of the action being entered.
|
|
296
|
+
* @param starttime The start time of the action.
|
|
297
|
+
* @param isRootAction Indicates if the action is a root action.
|
|
298
|
+
* @param element The element that initiated the event.
|
|
299
|
+
*/
|
|
300
|
+
listener: ActionEnterListener
|
|
301
|
+
): void;
|
|
302
|
+
/**
|
|
303
|
+
* Leaves an action that was previously created using {@link enterAction}. Use this method to set the load end event
|
|
304
|
+
* for a custom action and complete its creation. This method must be called after {@link enterAction}.
|
|
305
|
+
*
|
|
306
|
+
* @group Actions
|
|
236
307
|
* @see {@link enterAction}
|
|
237
|
-
* @param actionId ID of the action to leave. must be the value returned by enterAction
|
|
238
|
-
* @param stopTime
|
|
239
|
-
*
|
|
240
|
-
* @param startTime Optional start time in milliseconds (necessary if start time should be modified).
|
|
241
|
-
*
|
|
242
|
-
* RUM monitoring code will ignore it.
|
|
308
|
+
* @param actionId The ID of the action to leave. This must be the value returned by {@link enterAction}.
|
|
309
|
+
* @param stopTime The timestamp in milliseconds. Providing a stop time will force the action to stop and prevent
|
|
310
|
+
* the visually complete module from extending it.
|
|
311
|
+
* @param startTime Optional start time in milliseconds (necessary if the start time should be modified). Note that
|
|
312
|
+
* the start time must not be more than an hour in the past; otherwise it is ignored.
|
|
243
313
|
*/
|
|
244
314
|
leaveAction(actionId: number, stopTime?: number, startTime?: number): void;
|
|
245
315
|
/**
|
|
246
|
-
* Attaches a listener that
|
|
247
|
-
* Remove the listener if not needed or
|
|
248
|
-
*
|
|
249
|
-
* Use to hook into the out of the box action closing event.
|
|
316
|
+
* Attaches a listener that is called when leaving an action.<br />
|
|
317
|
+
* Remove the listener if not needed, or filter actions using {@link addActionProperties} to prevent sending the
|
|
318
|
+
* same action property for every action. Use this method to hook into the out-of-the-box action closing event.
|
|
250
319
|
*
|
|
320
|
+
* @group Actions
|
|
251
321
|
* @see {@link removeLeaveActionListener}
|
|
252
322
|
* @see {@link addActionProperties}
|
|
253
|
-
* @param listener A function that will be called when leaving an action
|
|
254
|
-
*/
|
|
255
|
-
addLeaveActionListener(listener: ActionLeaveListener): void;
|
|
256
|
-
/**
|
|
257
|
-
* Removes a previously attached listener that detects the leave action event
|
|
258
|
-
*
|
|
259
|
-
* @param listener A leave action listener to be removed
|
|
260
323
|
*/
|
|
261
|
-
|
|
324
|
+
addLeaveActionListener(
|
|
325
|
+
/**
|
|
326
|
+
* The callback function to be triggered when an action is left.
|
|
327
|
+
*
|
|
328
|
+
* @param actionId The ID of the action being left.
|
|
329
|
+
* @param stoptime The end time of the action.
|
|
330
|
+
* @param isRootAction Indicates if the action is a root action.
|
|
331
|
+
*/
|
|
332
|
+
listener: ActionLeaveListener
|
|
333
|
+
): void;
|
|
334
|
+
/**
|
|
335
|
+
* Removes a previously attached listener that detects the leave action event.
|
|
336
|
+
*
|
|
337
|
+
* @group Actions
|
|
338
|
+
* @see {@link addLeaveActionListener}
|
|
339
|
+
*/
|
|
340
|
+
removeLeaveActionListener(
|
|
341
|
+
/**
|
|
342
|
+
* The callback function to be removed.
|
|
343
|
+
*
|
|
344
|
+
* @param actionId The ID of the action being left.
|
|
345
|
+
* @param stoptime The end time of the action.
|
|
346
|
+
* @param isRootAction Indicates if the action is a root action.
|
|
347
|
+
*/
|
|
348
|
+
listener: ActionLeaveListener
|
|
349
|
+
): void;
|
|
350
|
+
|
|
262
351
|
/**
|
|
263
352
|
* Adds custom {@link https://www.dynatrace.com/support/help/shortlink/user-session-properties | action properties}
|
|
264
353
|
* to the currently active action. <br />
|
|
265
|
-
* Only accepts valid java long, java double (as a string representation), Date objects, and
|
|
266
|
-
*
|
|
267
|
-
* Action properties must be defined
|
|
354
|
+
* Only accepts valid java long, java double (as a string representation), Date objects, and short strings with a
|
|
355
|
+
* maximum length of 100-1000 characters (as configured under Application Settings). <br />
|
|
356
|
+
* Action properties must be defined under Application settings and use a lowercase key.
|
|
268
357
|
*
|
|
358
|
+
* @group Custom Reporting
|
|
269
359
|
* @see {@link sendSessionProperties}
|
|
270
|
-
* @param parentActionId ID of the action.
|
|
271
|
-
* @param javaLong JSON object containing key
|
|
272
|
-
* range -9223372036854776000
|
|
273
|
-
* @param date JSON object containing key
|
|
274
|
-
* @param shortString JSON object containing key
|
|
275
|
-
*
|
|
276
|
-
*
|
|
277
|
-
*
|
|
278
|
-
*
|
|
279
|
-
*
|
|
280
|
-
* Public property is optional and if not declared as true values will be sent as masked(dT_pv) in doNotTrack mode
|
|
281
|
-
*
|
|
282
|
-
* @returns Status report about properties that were passed to the function.
|
|
283
|
-
* It contains data about failed properties with the failure reason.
|
|
284
|
-
* Contains data about properties that were sent successfully and a general message with information about total failed properties.
|
|
360
|
+
* @param parentActionId The ID of the action.
|
|
361
|
+
* @param javaLong A JSON object containing key-value pairs of valid numbers.
|
|
362
|
+
* The values must be within the range -9223372036854776000 to 9223372036854776000.
|
|
363
|
+
* @param date A JSON object containing key-value pairs of JavaScript Date objects.
|
|
364
|
+
* @param shortString A JSON object containing key-value pairs of strings. Each string must be less than 100 characters.
|
|
365
|
+
* @param javaDouble A JSON object containing key-value pairs of valid floating point numbers.
|
|
366
|
+
* The values must be within the range -1.7976931348623157e+308 to 1.7976931348623157e+308.
|
|
367
|
+
* @returns A status report about the properties passed to the function. This report contains information about any
|
|
368
|
+
* failed properties with the reason for failure, as well as details of properties that were sent successfully,
|
|
369
|
+
* and a summary message regarding the total number of failed properties.
|
|
285
370
|
*/
|
|
286
371
|
addActionProperties(
|
|
287
372
|
parentActionId: number,
|
|
@@ -290,207 +375,263 @@ export interface DtrumApi {
|
|
|
290
375
|
shortString?: PropertyMap<string>,
|
|
291
376
|
javaDouble?: PropertyMap<number>
|
|
292
377
|
): PropertiesSendingReport | undefined;
|
|
378
|
+
|
|
293
379
|
/**
|
|
294
|
-
* Reports an error
|
|
295
|
-
*
|
|
296
|
-
*
|
|
297
|
-
*
|
|
298
|
-
* which
|
|
380
|
+
* Reports an error to Dynatrace. Use this method when you catch errors in your application code and want to
|
|
381
|
+
* propagate them to Dynatrace, rather than handling them solely with your own logging. If the error is managed by
|
|
382
|
+
* your application, it will not be handled by the global JavaScript
|
|
383
|
+
* {@link https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror | onerror event handler},
|
|
384
|
+
* which Dynatrace uses to automatically capture JavaScript errors.
|
|
299
385
|
*
|
|
300
|
-
* @
|
|
301
|
-
*
|
|
302
|
-
*
|
|
303
|
-
*
|
|
304
|
-
*
|
|
386
|
+
* @group Custom Reporting
|
|
387
|
+
* @param error The error to report. Any standard browser error object is supported. If the error does not
|
|
388
|
+
* include a stack trace, the RUM JavaScript monitoring code will attempt to generate one.
|
|
389
|
+
* Alternatively, you can provide your own object with the following properties: 'message',
|
|
390
|
+
* 'file', 'line', 'column', and 'stack'. The 'message' property is required; all other
|
|
391
|
+
* properties are optional.
|
|
392
|
+
* @param parentActionId The parent action ID. If not provided or null, the error is added to the current action.
|
|
305
393
|
*/
|
|
306
394
|
reportError(error: Error | string, parentActionId?: number): void;
|
|
395
|
+
|
|
307
396
|
/**
|
|
308
|
-
* Sets the
|
|
309
|
-
*
|
|
397
|
+
* Sets the
|
|
398
|
+
* {@link https://www.dynatrace.com/support/help/shortlink/user-tagging#user-tagging-via-javascript-api | user tag},
|
|
399
|
+
* which is used to identify individual users across different browsers, devices, and sessions.
|
|
310
400
|
*
|
|
311
|
-
* @
|
|
401
|
+
* @group Custom Reporting
|
|
402
|
+
* @param value The username. This can be a name, user ID, or email address.
|
|
312
403
|
*/
|
|
313
404
|
identifyUser(value: string): void;
|
|
405
|
+
|
|
314
406
|
/**
|
|
315
|
-
* Adds a listener that is called when the user is leaving the page,
|
|
316
|
-
* Use
|
|
407
|
+
* Adds a listener that is called when the user is leaving the page, before the RUM monitoring beacon is sent.
|
|
408
|
+
* Use this method to hook into the page unload event.
|
|
317
409
|
*
|
|
318
|
-
* @
|
|
410
|
+
* @group Lifecycle
|
|
319
411
|
*/
|
|
320
|
-
addPageLeavingListener(
|
|
412
|
+
addPageLeavingListener(
|
|
413
|
+
/**
|
|
414
|
+
* A function that will be called in case the user leaves the page.
|
|
415
|
+
*
|
|
416
|
+
* @param unloadRunning A boolean that is true if the page is currently being dismissed.
|
|
417
|
+
*/
|
|
418
|
+
listener: PageLeaveListener
|
|
419
|
+
): void;
|
|
420
|
+
|
|
321
421
|
/**
|
|
322
|
-
* Indicates the start of a user input.
|
|
323
|
-
*
|
|
324
|
-
*
|
|
325
|
-
* Use when a user input is not automatically detected by the RUM monitoring code.
|
|
422
|
+
* Indicates the start of a user input. Every user input must be concluded by calling {@link endUserInput}.
|
|
423
|
+
* RUM JavaScript checks for an active user input when an XHR call or a page load occurs. If a user input is active,
|
|
424
|
+
* that input is marked as having triggered the user action. Use this method when a user input is not automatically detected by RUM JavaScript.
|
|
326
425
|
*
|
|
426
|
+
* @group Actions
|
|
327
427
|
* @see {@link endUserInput}
|
|
328
|
-
* @param domNode DOM node
|
|
329
|
-
*
|
|
330
|
-
* @param
|
|
331
|
-
* @param
|
|
332
|
-
* @
|
|
428
|
+
* @param domNode The DOM node (or a string identifier) that triggered the action (e.g., a button). Determines the
|
|
429
|
+
* caption for the resulting action.
|
|
430
|
+
* @param type The type of action (e.g., 'click', 'keypress', 'scroll').
|
|
431
|
+
* @param addInfo Optional additional information about the user input (e.g., key, mouse button, etc.).
|
|
432
|
+
* @param validTime The duration (in milliseconds) for which this user input should remain valid.
|
|
433
|
+
* @returns An object containing information about the user input.
|
|
333
434
|
*/
|
|
334
435
|
beginUserInput(domNode: HTMLElement | string, type: string, addInfo?: string, validTime?: number): DtRumUserInput;
|
|
436
|
+
|
|
335
437
|
/**
|
|
336
|
-
* Ends a user input.
|
|
438
|
+
* Ends a user input that was started with {@link beginUserInput}.
|
|
337
439
|
*
|
|
338
|
-
* @
|
|
440
|
+
* @group Actions
|
|
441
|
+
* @param userInputObject The user input object returned by {@link beginUserInput}.
|
|
339
442
|
*/
|
|
340
443
|
endUserInput(userInputObject: DtRumUserInput): void;
|
|
444
|
+
|
|
341
445
|
/**
|
|
342
|
-
* Extends or initiates actions.
|
|
343
|
-
*
|
|
344
|
-
*
|
|
345
|
-
*
|
|
346
|
-
* would lead to the action being closed too early and inaccurate metrics measurements (e.g., user action duration).
|
|
347
|
-
* Needs to be called before {@link leaveXhrAction}.
|
|
446
|
+
* Extends or initiates actions. Use this method when you want to extend an active Load or XHR action with an unlinked XHR call, i.e., an action.
|
|
447
|
+
* It is particularly useful when the XHR call is asynchronous and cannot be automatically correlated with an action,
|
|
448
|
+
* which might otherwise cause the action to close prematurely, leading to inaccurate metrics (such as user action duration).
|
|
449
|
+
* This method must be called before {@link leaveXhrAction}.
|
|
348
450
|
*
|
|
451
|
+
* @group Actions
|
|
349
452
|
* @see {@link leaveXhrAction}
|
|
350
|
-
* @param type Optional
|
|
351
|
-
* @param xmode XHR action creation mode
|
|
352
|
-
* 0 ...
|
|
353
|
-
* 1 ... Extend any running action
|
|
354
|
-
* 3 ... Start action if user input is present
|
|
355
|
-
* @param xhrUrl
|
|
356
|
-
*
|
|
357
|
-
* @returns ID of the XhrAction
|
|
453
|
+
* @param type Optional information about the type of XHR (e.g., framework name).
|
|
454
|
+
* @param xmode XHR action creation mode:<br />
|
|
455
|
+
* 0 ... Extend only running XHR actions.<br />
|
|
456
|
+
* 1 ... Extend any running action.<br />
|
|
457
|
+
* 3 ... Start an action if a user input is present.
|
|
458
|
+
* @param xhrUrl The URL of the requested resource. This argument should always be provided. If omitted, the request will appear as "/undefined" in the waterfall.
|
|
459
|
+
* @returns The ID of the XHR action.
|
|
358
460
|
*/
|
|
359
461
|
enterXhrAction(type: string, xmode?: 0 | 1 | 3, xhrUrl?: string): number;
|
|
462
|
+
|
|
360
463
|
/**
|
|
361
|
-
* Indicates the end of an XHR action
|
|
464
|
+
* Indicates the end of an XHR action.
|
|
362
465
|
*
|
|
363
|
-
* @
|
|
364
|
-
* @
|
|
466
|
+
* @group Actions
|
|
467
|
+
* @see {@link enterXhrAction}
|
|
468
|
+
* @param actionId The ID of the XHR action.
|
|
469
|
+
* @param stopTime The stop time of the XHR action in milliseconds.
|
|
365
470
|
*/
|
|
366
471
|
leaveXhrAction(actionId: number, stopTime?: number): void;
|
|
472
|
+
|
|
367
473
|
/**
|
|
368
|
-
* Indicates that an XHR callback is active (
|
|
369
|
-
*
|
|
370
|
-
*
|
|
371
|
-
*
|
|
372
|
-
* The XHR callback must
|
|
474
|
+
* Indicates that an XHR callback is active (e.g., XMLHttpRequest onreadystatechange) and links subsequently triggered
|
|
475
|
+
* XHR actions to this callback.
|
|
476
|
+
* For example, if an XHR callback adds a script tag to your page and triggers another XHR call, that call
|
|
477
|
+
* would not automatically be added to the current action. Calling this method allows the subsequent XHR call
|
|
478
|
+
* to be linked to its initial action. The XHR callback must be concluded with {@link leaveXhrCallback}.
|
|
373
479
|
*
|
|
374
|
-
* @
|
|
480
|
+
* @group Actions
|
|
481
|
+
* @param actionId The ID of the action to which the callback belongs.
|
|
375
482
|
*/
|
|
376
483
|
enterXhrCallback(actionId: number): void;
|
|
484
|
+
|
|
377
485
|
/**
|
|
378
486
|
* Indicates the end of an XHR callback.
|
|
379
487
|
*
|
|
488
|
+
* @group Actions
|
|
380
489
|
* @see {@link enterXhrCallback}
|
|
381
|
-
* @param actionId ID of the action
|
|
490
|
+
* @param actionId The ID of the action to which the callback belongs.
|
|
382
491
|
*/
|
|
383
492
|
leaveXhrCallback(actionId: number): void;
|
|
493
|
+
|
|
384
494
|
/**
|
|
385
|
-
* Indicates the start of a load action. Frameworks often have their own load callback functions
|
|
386
|
-
*
|
|
495
|
+
* Indicates the start of a load action. Frameworks often have their own load callback functions, and this method
|
|
496
|
+
* can be used when a framework begins loading before the 'DOMContentLoaded' event.
|
|
387
497
|
*
|
|
498
|
+
* @group Actions
|
|
388
499
|
*/
|
|
389
500
|
signalOnLoadStart(): void;
|
|
501
|
+
|
|
390
502
|
/**
|
|
391
|
-
*
|
|
392
|
-
*
|
|
503
|
+
* Instructs RUM JavaScript to wait for an additional call to {@link signalOnLoadEnd} before closing the 'onload'
|
|
504
|
+
* action. Note: The load action will only use the provided load end event correctly if {@link signalOnLoadEnd} is
|
|
505
|
+
* called afterward.
|
|
393
506
|
*
|
|
507
|
+
* @group Actions
|
|
394
508
|
* @see {@link setLoadEndManually}
|
|
395
|
-
* Notifies the RUM monitoring code to wait for an additional call of {@link signalOnLoadEnd}, before closing the 'onload' action.
|
|
396
|
-
* Note: Only when {@link signalOnLoadEnd} is called after, the load action will use the provided load end event correctly.
|
|
397
509
|
*/
|
|
398
510
|
incrementOnLoadEndMarkers(): void;
|
|
511
|
+
|
|
399
512
|
/**
|
|
400
|
-
* Indicates the end of a load action.
|
|
401
|
-
*
|
|
513
|
+
* Indicates the end of a load action. This method requires that {@link incrementOnLoadEndMarkers} has been called beforehand.
|
|
514
|
+
* The action is closed after the final call to {@link signalOnLoadEnd}.
|
|
402
515
|
*
|
|
516
|
+
* @group Actions
|
|
403
517
|
* @see {@link signalOnLoadStart}
|
|
404
518
|
*/
|
|
405
519
|
signalOnLoadEnd(): void;
|
|
520
|
+
|
|
406
521
|
/**
|
|
407
|
-
* Sets the
|
|
522
|
+
* Sets the name of the currently active action, or the action corresponding to the provided ID.
|
|
408
523
|
*
|
|
409
|
-
* @
|
|
410
|
-
* @param
|
|
411
|
-
* @
|
|
524
|
+
* @group Actions
|
|
525
|
+
* @param actionName The new name for the action.
|
|
526
|
+
* @param actionId The ID of the action to update. If omitted, the currently active action is updated.
|
|
527
|
+
* @returns An {@link ActionNameResult} indicating whether the update was successful.
|
|
412
528
|
*/
|
|
413
529
|
actionName(actionName: string, actionId?: number): ActionNameResult;
|
|
530
|
+
|
|
414
531
|
/**
|
|
415
|
-
*
|
|
532
|
+
* Immediately ends the current session.
|
|
533
|
+
*
|
|
534
|
+
* @group Lifecycle
|
|
416
535
|
*/
|
|
417
536
|
endSession(): void;
|
|
537
|
+
|
|
418
538
|
/**
|
|
419
|
-
* Returns the current time in milliseconds.
|
|
420
|
-
* It automatically chooses the most accurate way to determine the current time.
|
|
539
|
+
* Returns the current time in milliseconds using the most accurate method available.
|
|
421
540
|
*
|
|
422
|
-
* @
|
|
541
|
+
* @group Utilities
|
|
542
|
+
* @returns The current time in milliseconds.
|
|
423
543
|
*/
|
|
424
544
|
now(): number;
|
|
545
|
+
|
|
425
546
|
/**
|
|
426
|
-
* Enables
|
|
547
|
+
* Enables RUM JavaScript if it was previously disabled via the
|
|
427
548
|
* {@link https://www.dynatrace.com/support/help/shortlink/configure-rum-privacy#opt-in-mode | opt-in mode}.
|
|
428
|
-
* Use in
|
|
549
|
+
* Use this method in conjunction with a user consent tool to enable RUM monitoring once consent has been provided.
|
|
429
550
|
*
|
|
551
|
+
* @group Lifecycle
|
|
430
552
|
* @see {@link disable}
|
|
431
553
|
*/
|
|
432
554
|
enable(): void;
|
|
555
|
+
|
|
433
556
|
/**
|
|
434
|
-
* Disables
|
|
435
|
-
*
|
|
436
|
-
* Use
|
|
557
|
+
* Disables RUM JavaScript and removes all cookies if it was previously enabled with {@link enable}, thereby activating
|
|
558
|
+
* the {@link https://www.dynatrace.com/support/help/shortlink/configure-rum-privacy#opt-in-mode | opt-in mode}.
|
|
559
|
+
* Use this method along with a user consent tool to disable RUM monitoring when consent is not provided.
|
|
437
560
|
*
|
|
561
|
+
* @group Lifecycle
|
|
438
562
|
* @see {@link enable}
|
|
439
563
|
*/
|
|
440
564
|
disable(): void;
|
|
565
|
+
|
|
441
566
|
/**
|
|
442
|
-
* Adds a listener that
|
|
443
|
-
*
|
|
444
|
-
* @
|
|
445
|
-
|
|
446
|
-
|
|
567
|
+
* Adds a listener that is triggered when the current visit times out and before a new visit ID is generated.
|
|
568
|
+
*
|
|
569
|
+
* @group Lifecycle
|
|
570
|
+
* @param listener The listener function to add, which receives the current visit ID and a boolean indicating if a
|
|
571
|
+
* new visit will start due to timeout.
|
|
572
|
+
*/
|
|
573
|
+
addVisitTimeoutListener(listener: (
|
|
574
|
+
/**
|
|
575
|
+
* The timed out visit ID.
|
|
576
|
+
*/
|
|
577
|
+
visitId: string,
|
|
578
|
+
/**
|
|
579
|
+
* True if a new visit will start due to timeout.
|
|
580
|
+
*/
|
|
581
|
+
newVisitAfterTimeout: boolean
|
|
582
|
+
) => void): void;
|
|
583
|
+
|
|
447
584
|
/**
|
|
448
|
-
* Enables session replay
|
|
585
|
+
* Enables session replay.
|
|
449
586
|
*
|
|
450
|
-
* @
|
|
587
|
+
* @group Lifecycle
|
|
588
|
+
* @param ignoreCostControl If true, enables session replay regardless of the cost control configuration.
|
|
451
589
|
*/
|
|
452
590
|
enableSessionReplay(ignoreCostControl: boolean): void;
|
|
591
|
+
|
|
453
592
|
/**
|
|
454
|
-
* Disables session replay
|
|
593
|
+
* Disables session replay.
|
|
594
|
+
*
|
|
595
|
+
* @group Lifecycle
|
|
455
596
|
*/
|
|
456
597
|
disableSessionReplay(): void;
|
|
598
|
+
|
|
457
599
|
/**
|
|
458
|
-
*
|
|
459
|
-
* Use to troubleshoot RUM monitoring.
|
|
600
|
+
* Retrieves and evaluates metadata for the page, which can be used for troubleshooting RUM monitoring.
|
|
460
601
|
*
|
|
461
|
-
* @
|
|
602
|
+
* @group Custom Reporting
|
|
603
|
+
* @returns An array of metadata objects, each containing an id, type, expression, the captured value, and an
|
|
604
|
+
* optional failure reason.
|
|
462
605
|
*/
|
|
463
|
-
getAndEvaluateMetaData():
|
|
464
|
-
|
|
465
|
-
type: string;
|
|
466
|
-
expression: string;
|
|
467
|
-
value: string | null;
|
|
468
|
-
failureReason?: string;
|
|
469
|
-
}[];
|
|
606
|
+
getAndEvaluateMetaData(): MetaData[];
|
|
607
|
+
|
|
470
608
|
/**
|
|
471
|
-
*
|
|
472
|
-
* Use when you want to
|
|
609
|
+
* Re-enables persistent values if they were previously disabled by calling {@link disablePersistentValues}.
|
|
610
|
+
* Use this method when you want to resume monitoring returning users.
|
|
611
|
+
*
|
|
612
|
+
* @group Lifecycle
|
|
473
613
|
*/
|
|
474
614
|
enablePersistentValues(): void;
|
|
615
|
+
|
|
475
616
|
/**
|
|
476
|
-
* Removes all
|
|
477
|
-
*
|
|
478
|
-
*
|
|
479
|
-
* Use when you want to disable monitoring of returning users.
|
|
480
|
-
*
|
|
617
|
+
* Removes all persistent values and disables any functionality that would recreate them. Note that this must be
|
|
618
|
+
* called on every page, as it erases persistent RUM monitoring data, including the information that prevents
|
|
619
|
+
* persistent data from being stored.<br />
|
|
620
|
+
* Use this method when you want to disable monitoring of returning users.
|
|
621
|
+
* For more information, see {@link https://www.dynatrace.com/support/help/shortlink/cookies#cookie-storage | cookie storage}.
|
|
481
622
|
*
|
|
482
|
-
* @
|
|
483
|
-
*
|
|
623
|
+
* @group Lifecycle
|
|
624
|
+
* @param remember If true, the configuration state is saved in local storage so that it persists across page loads.
|
|
484
625
|
*/
|
|
485
626
|
disablePersistentValues(remember: boolean): void;
|
|
627
|
+
|
|
628
|
+
// eslint-disable-next-line @dynatrace/dem-eslint-rules/jsagent-changelog-sprint-annotation -- apparently unused since 2018
|
|
486
629
|
/**
|
|
487
|
-
*
|
|
488
|
-
*
|
|
489
|
-
* @param method Listener which will be called before diff action. Listener receives one argument
|
|
490
|
-
* which is a string with diff. Listener also must return the diff string.
|
|
491
|
-
* Read more about {@link https://www.dynatrace.com/support/help/shortlink/cookies#cookie-storage | cookie storage}.
|
|
630
|
+
* @deprecated
|
|
631
|
+
* @ignore
|
|
492
632
|
*/
|
|
493
633
|
registerPreDiffMethod(method: (diff: string) => string): void;
|
|
634
|
+
|
|
494
635
|
/**
|
|
495
636
|
* Sends {@link https://www.dynatrace.com/support/help/shortlink/user-session-properties | session properties} on a beacon
|
|
496
637
|
* currently only accepts valid java long, java double (as a string representation), Date objects, and short strings of
|
|
@@ -499,64 +640,110 @@ export interface DtrumApi {
|
|
|
499
640
|
*
|
|
500
641
|
* Make sure to first define session properties under Application settings before making this API call.
|
|
501
642
|
*
|
|
643
|
+
* @group Custom Reporting
|
|
502
644
|
* @see {@link addActionProperties} is related and works similarly.
|
|
503
|
-
* @param javaLongOrObject JSON object containing key
|
|
504
|
-
*
|
|
505
|
-
* @param
|
|
506
|
-
*
|
|
507
|
-
* @param javaDouble JSON object containing key
|
|
508
|
-
*
|
|
509
|
-
*
|
|
510
|
-
*
|
|
511
|
-
*
|
|
512
|
-
*
|
|
513
|
-
* @returns Status report about properties that were passed to the function.
|
|
514
|
-
* It contains data about failed properties with the failure reason.
|
|
515
|
-
* Contains data about properties that were sent successfully and a general message with information about total failed properties.
|
|
645
|
+
* @param javaLongOrObject A JSON object containing key-value pairs of valid numbers.
|
|
646
|
+
* The values must be within the range -9223372036854776000 to 9223372036854776000.
|
|
647
|
+
* @param date A JSON object containing key-value pairs of JavaScript Date objects.
|
|
648
|
+
* @param shortString A JSON object containing key-value pairs of strings. Each string must be less than 100 characters.
|
|
649
|
+
* @param javaDouble A JSON object containing key-value pairs of valid floating point numbers.
|
|
650
|
+
* The values must be within the range -1.7976931348623157e+308 to 1.7976931348623157e+308.
|
|
651
|
+
* @returns A status report about the properties passed to the function. This report contains information about any
|
|
652
|
+
* failed properties with the reason for failure, as well as details of properties that were sent successfully,
|
|
653
|
+
* and a summary message regarding the total number of failed properties.
|
|
516
654
|
*/
|
|
517
655
|
sendSessionProperties(
|
|
518
656
|
javaLongOrObject?: PropertyMap<number> | PropertyObject,
|
|
519
657
|
date?: PropertyMap<Date>,
|
|
520
658
|
shortString?: PropertyMap<string>,
|
|
521
659
|
javaDouble?: PropertyMap<number>
|
|
522
|
-
|
|
523
660
|
): PropertiesSendingReport | undefined;
|
|
661
|
+
|
|
524
662
|
/**
|
|
525
|
-
*
|
|
526
|
-
*
|
|
527
|
-
* Custom errors must first be defined in the Application settings.
|
|
663
|
+
* Reports {@link https://www.dynatrace.com/support/help/shortlink/configure-application-errors#configure-custom-errors | custom errors}
|
|
664
|
+
* to Dynatrace. Use this method to capture custom errors, such as form validation errors, that are defined in Application settings.
|
|
528
665
|
*
|
|
529
|
-
* @
|
|
530
|
-
* @param
|
|
531
|
-
* @param
|
|
532
|
-
* @param
|
|
533
|
-
*
|
|
534
|
-
* When
|
|
666
|
+
* @group Custom Reporting
|
|
667
|
+
* @param key The key of the error (e.g., 'validation error').
|
|
668
|
+
* @param value The error value (e.g., 'Email validation failed').
|
|
669
|
+
* @param hint An optional hint to identify the issue, such as the content of the input element that triggered the error.
|
|
670
|
+
* @param parentingInfo Defines how the custom error should be attached. When a number is provided, the error is attached
|
|
671
|
+
* to the specified open action. When a boolean is provided and true, it is attached to the currently active action.
|
|
535
672
|
*/
|
|
536
673
|
reportCustomError(key: string, value: string, hint?: string, parentingInfo?: number | boolean): void;
|
|
537
674
|
|
|
538
675
|
/**
|
|
539
|
-
* Enables manual page detection.
|
|
540
|
-
*
|
|
676
|
+
* Enables manual page detection. Once this method is called, RUM JavaScript will stop automatically detecting page and page group names
|
|
677
|
+
* and will only use the values provided via {@link setPage}.
|
|
541
678
|
* It is recommended to call this as early as possible.
|
|
679
|
+
*
|
|
680
|
+
* @group Custom Reporting
|
|
542
681
|
*/
|
|
543
682
|
enableManualPageDetection(): void;
|
|
544
683
|
|
|
545
684
|
/**
|
|
546
|
-
* Starts a new page view and reports it to
|
|
685
|
+
* Starts a new page view and reports it to the Dynatrace server.
|
|
547
686
|
*
|
|
548
|
-
* @
|
|
549
|
-
* @returns
|
|
550
|
-
*
|
|
551
|
-
*
|
|
552
|
-
*
|
|
553
|
-
*
|
|
687
|
+
* @group Custom Reporting
|
|
688
|
+
* @returns A negative number if starting the new page failed, or a positive number if the new page was started successfully.
|
|
689
|
+
* * -2: The page is being set while manual page detection is inactive (perhaps {@link enableManualPageDetection} was not called).
|
|
690
|
+
* * -1: The new page is the same as the previous one.
|
|
691
|
+
* * 1: The new page started successfully.
|
|
692
|
+
* * 2: The new page started during onload, meaning it is cached and will be sent with the load action.
|
|
554
693
|
*/
|
|
555
694
|
setPage(newPage: APIPage): number;
|
|
556
695
|
}
|
|
557
696
|
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
697
|
+
/**
|
|
698
|
+
* A valid json object which does not contain functions, undefined, Infinity or NaN as values.
|
|
699
|
+
* A JSONValue may only be:
|
|
700
|
+
* 1. primitive (string, number, boolean, null)
|
|
701
|
+
* 2. an array of JSONValues
|
|
702
|
+
* 3. another valid JSONObject
|
|
703
|
+
*
|
|
704
|
+
* @category Utilities
|
|
705
|
+
*/
|
|
706
|
+
export type JSONObject = { [k: string]: JSONValue };
|
|
707
|
+
/**
|
|
708
|
+
* @category Utilities
|
|
709
|
+
*/
|
|
710
|
+
export type Primitive = string | number | boolean | null;
|
|
711
|
+
/**
|
|
712
|
+
* @category Utilities
|
|
713
|
+
*/
|
|
714
|
+
export type JSONArray = JSONValue[];
|
|
715
|
+
/**
|
|
716
|
+
* @category Utilities
|
|
717
|
+
*/
|
|
718
|
+
export type JSONValue = JSONArray | JSONObject | Primitive;
|
|
719
|
+
|
|
720
|
+
/**
|
|
721
|
+
* @inline
|
|
722
|
+
* @ignore
|
|
723
|
+
*/
|
|
724
|
+
export interface DynatraceApi {
|
|
725
|
+
/**
|
|
726
|
+
* Send a Business Event
|
|
727
|
+
*
|
|
728
|
+
* With sendBizEvent, you can report a business event. These standalone events are being sent detached from user actions or sessions.
|
|
729
|
+
* Note: Business events are only supported on Dynatrace SaaS deployments currently.
|
|
730
|
+
*
|
|
731
|
+
* @example
|
|
732
|
+
* ```typescript
|
|
733
|
+
* dynatrace.sendBizEvent("type", {
|
|
734
|
+
* prop: "value",
|
|
735
|
+
* name: "biz event name",
|
|
736
|
+
* timestamp: 123,
|
|
737
|
+
* url: "www.dynatrace.com",
|
|
738
|
+
* "page_id": "123456789",
|
|
739
|
+
* "window.orientation": "diagonal"
|
|
740
|
+
* });
|
|
741
|
+
*```
|
|
742
|
+
*
|
|
743
|
+
* @param type Mandatory event type
|
|
744
|
+
* @param fields Must be a valid JSON object and cannot contain functions, undefined, Infinity and NaN as values, otherwise they will be replaced with null.
|
|
745
|
+
* `Attributes` need to be serializable using JSON.stringify.
|
|
746
|
+
* The resulting event will be populated with `attributes` parameter, and enriched with additional properties, thus also empty objects are valid.
|
|
747
|
+
*/
|
|
748
|
+
sendBizEvent(type: string, fields: JSONObject): void;
|
|
562
749
|
}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynatrace/dtrum-api-types",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.321.4",
|
|
4
4
|
"description": "Typescript types for the Dynatrace RUM JavaScript dtrum.* API",
|
|
5
5
|
"main": "",
|
|
6
|
-
"typings": "
|
|
6
|
+
"typings": "index.d.ts",
|
|
7
7
|
"homepage": "https://www.dynatrace.com",
|
|
8
8
|
"author": "Dynatrace",
|
|
9
9
|
"license": "SEE LICENSE IN LICENSE.md",
|