hytopia 0.8.6-dev5 → 0.8.6-dev6nopool
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/bun-server.mjs +167 -165
- package/docs/server.audiomanager.getallentityattachedaudios.md +1 -1
- package/docs/server.chunklatticeevent.md +14 -0
- package/docs/server.chunklatticeeventpayloads._chunk_lattice.add_chunk_.md +16 -0
- package/docs/server.chunklatticeeventpayloads.md +19 -0
- package/docs/server.md +34 -1
- package/docs/server.particleemitter.burst.md +54 -0
- package/docs/server.particleemitter.md +14 -0
- package/docs/server.particleemitterevent.md +14 -0
- package/docs/server.particleemittereventpayloads._particle_emitter.burst_.md +16 -0
- package/docs/server.particleemittereventpayloads.md +19 -0
- package/docs/server.rgbcolor.md +1 -1
- package/docs/server.telemetry.getprocessstats.md +56 -0
- package/docs/server.telemetry.initializesentry.md +74 -0
- package/docs/server.telemetry.md +126 -0
- package/docs/server.telemetry.sentry.md +23 -0
- package/docs/server.telemetry.startspan.md +91 -0
- package/docs/server.telemetryspanoperation.md +244 -0
- package/docs/server.telemetryspanoptions.md +18 -0
- package/node-server.mjs +173 -171
- package/package.json +1 -1
- package/server.api.json +826 -2
- package/server.d.ts +147 -2
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [server](./server.md) > [ChunkLatticeEventPayloads](./server.chunklatticeeventpayloads.md) > ["CHUNK\_LATTICE.ADD\_CHUNK"](./server.chunklatticeeventpayloads._chunk_lattice.add_chunk_.md)
|
|
4
|
+
|
|
5
|
+
## ChunkLatticeEventPayloads."CHUNK\_LATTICE.ADD\_CHUNK" property
|
|
6
|
+
|
|
7
|
+
Emitted when a chunk is added to the lattice.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
[ChunkLatticeEvent.ADD_CHUNK]: {
|
|
13
|
+
chunkLattice: ChunkLattice;
|
|
14
|
+
chunk: Chunk;
|
|
15
|
+
};
|
|
16
|
+
```
|
|
@@ -37,6 +37,25 @@ Description
|
|
|
37
37
|
</th></tr></thead>
|
|
38
38
|
<tbody><tr><td>
|
|
39
39
|
|
|
40
|
+
["CHUNK\_LATTICE.ADD\_CHUNK"](./server.chunklatticeeventpayloads._chunk_lattice.add_chunk_.md)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
</td><td>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
</td><td>
|
|
47
|
+
|
|
48
|
+
{ chunkLattice: [ChunkLattice](./server.chunklattice.md)<!-- -->; chunk: [Chunk](./server.chunk.md)<!-- -->; }
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
</td><td>
|
|
52
|
+
|
|
53
|
+
Emitted when a chunk is added to the lattice.
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
</td></tr>
|
|
57
|
+
<tr><td>
|
|
58
|
+
|
|
40
59
|
["CHUNK\_LATTICE.REMOVE\_CHUNK"](./server.chunklatticeeventpayloads._chunk_lattice.remove_chunk_.md)
|
|
41
60
|
|
|
42
61
|
|
package/docs/server.md
CHANGED
|
@@ -445,6 +445,17 @@ A simple entity controller with basic movement functions.
|
|
|
445
445
|
Represents the physics simulation for a world.
|
|
446
446
|
|
|
447
447
|
|
|
448
|
+
</td></tr>
|
|
449
|
+
<tr><td>
|
|
450
|
+
|
|
451
|
+
[Telemetry](./server.telemetry.md)
|
|
452
|
+
|
|
453
|
+
|
|
454
|
+
</td><td>
|
|
455
|
+
|
|
456
|
+
Manages performance telemetry and error tracking through your Sentry.io account.
|
|
457
|
+
|
|
458
|
+
|
|
448
459
|
</td></tr>
|
|
449
460
|
<tr><td>
|
|
450
461
|
|
|
@@ -783,6 +794,17 @@ Event types a SceneUI instance can emit. See [SceneUIEventPayloads](./server.sce
|
|
|
783
794
|
Event types a Simulation instance can emit. See [SimulationEventPayloads](./server.simulationeventpayloads.md) for the payloads.
|
|
784
795
|
|
|
785
796
|
|
|
797
|
+
</td></tr>
|
|
798
|
+
<tr><td>
|
|
799
|
+
|
|
800
|
+
[TelemetrySpanOperation](./server.telemetryspanoperation.md)
|
|
801
|
+
|
|
802
|
+
|
|
803
|
+
</td><td>
|
|
804
|
+
|
|
805
|
+
Performance telemetry span operation types.
|
|
806
|
+
|
|
807
|
+
|
|
786
808
|
</td></tr>
|
|
787
809
|
<tr><td>
|
|
788
810
|
|
|
@@ -1261,7 +1283,7 @@ A quaternion.
|
|
|
1261
1283
|
|
|
1262
1284
|
</td><td>
|
|
1263
1285
|
|
|
1264
|
-
A RGB color.
|
|
1286
|
+
A RGB color. r, g and b expect a value between 0 and 255.
|
|
1265
1287
|
|
|
1266
1288
|
|
|
1267
1289
|
</td></tr>
|
|
@@ -1866,6 +1888,17 @@ Additional mass properties for a RigidBody.
|
|
|
1866
1888
|
The options for a rigid body.
|
|
1867
1889
|
|
|
1868
1890
|
|
|
1891
|
+
</td></tr>
|
|
1892
|
+
<tr><td>
|
|
1893
|
+
|
|
1894
|
+
[TelemetrySpanOptions](./server.telemetryspanoptions.md)
|
|
1895
|
+
|
|
1896
|
+
|
|
1897
|
+
</td><td>
|
|
1898
|
+
|
|
1899
|
+
Options for creating a telemetry span.
|
|
1900
|
+
|
|
1901
|
+
|
|
1869
1902
|
</td></tr>
|
|
1870
1903
|
<tr><td>
|
|
1871
1904
|
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [server](./server.md) > [ParticleEmitter](./server.particleemitter.md) > [burst](./server.particleemitter.burst.md)
|
|
4
|
+
|
|
5
|
+
## ParticleEmitter.burst() method
|
|
6
|
+
|
|
7
|
+
Creates a burst of particles, regardless of pause state.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
burst(count: number): void;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
<table><thead><tr><th>
|
|
18
|
+
|
|
19
|
+
Parameter
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
</th><th>
|
|
23
|
+
|
|
24
|
+
Type
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
</th><th>
|
|
28
|
+
|
|
29
|
+
Description
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
</th></tr></thead>
|
|
33
|
+
<tbody><tr><td>
|
|
34
|
+
|
|
35
|
+
count
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
</td><td>
|
|
39
|
+
|
|
40
|
+
number
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
</td><td>
|
|
44
|
+
|
|
45
|
+
The number of particles to burst.
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
</td></tr>
|
|
49
|
+
</tbody></table>
|
|
50
|
+
|
|
51
|
+
**Returns:**
|
|
52
|
+
|
|
53
|
+
void
|
|
54
|
+
|
|
@@ -806,6 +806,20 @@ Description
|
|
|
806
806
|
</th></tr></thead>
|
|
807
807
|
<tbody><tr><td>
|
|
808
808
|
|
|
809
|
+
[burst(count)](./server.particleemitter.burst.md)
|
|
810
|
+
|
|
811
|
+
|
|
812
|
+
</td><td>
|
|
813
|
+
|
|
814
|
+
|
|
815
|
+
</td><td>
|
|
816
|
+
|
|
817
|
+
Creates a burst of particles, regardless of pause state.
|
|
818
|
+
|
|
819
|
+
|
|
820
|
+
</td></tr>
|
|
821
|
+
<tr><td>
|
|
822
|
+
|
|
809
823
|
[despawn()](./server.particleemitter.despawn.md)
|
|
810
824
|
|
|
811
825
|
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [server](./server.md) > [ParticleEmitterEventPayloads](./server.particleemittereventpayloads.md) > ["PARTICLE\_EMITTER.BURST"](./server.particleemittereventpayloads._particle_emitter.burst_.md)
|
|
4
|
+
|
|
5
|
+
## ParticleEmitterEventPayloads."PARTICLE\_EMITTER.BURST" property
|
|
6
|
+
|
|
7
|
+
Emitted when a ParticleEmitter bursts the specified number of particles.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
[ParticleEmitterEvent.BURST]: {
|
|
13
|
+
particleEmitter: ParticleEmitter;
|
|
14
|
+
count: number;
|
|
15
|
+
};
|
|
16
|
+
```
|
|
@@ -37,6 +37,25 @@ Description
|
|
|
37
37
|
</th></tr></thead>
|
|
38
38
|
<tbody><tr><td>
|
|
39
39
|
|
|
40
|
+
["PARTICLE\_EMITTER.BURST"](./server.particleemittereventpayloads._particle_emitter.burst_.md)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
</td><td>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
</td><td>
|
|
47
|
+
|
|
48
|
+
{ particleEmitter: [ParticleEmitter](./server.particleemitter.md)<!-- -->; count: number; }
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
</td><td>
|
|
52
|
+
|
|
53
|
+
Emitted when a ParticleEmitter bursts the specified number of particles.
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
</td></tr>
|
|
57
|
+
<tr><td>
|
|
58
|
+
|
|
40
59
|
["PARTICLE\_EMITTER.DESPAWN"](./server.particleemittereventpayloads._particle_emitter.despawn_.md)
|
|
41
60
|
|
|
42
61
|
|
package/docs/server.rgbcolor.md
CHANGED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [server](./server.md) > [Telemetry](./server.telemetry.md) > [getProcessStats](./server.telemetry.getprocessstats.md)
|
|
4
|
+
|
|
5
|
+
## Telemetry.getProcessStats() method
|
|
6
|
+
|
|
7
|
+
Gets current process memory and performance statistics.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
static getProcessStats(asMeasurement?: boolean): Record<string, any>;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
<table><thead><tr><th>
|
|
18
|
+
|
|
19
|
+
Parameter
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
</th><th>
|
|
23
|
+
|
|
24
|
+
Type
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
</th><th>
|
|
28
|
+
|
|
29
|
+
Description
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
</th></tr></thead>
|
|
33
|
+
<tbody><tr><td>
|
|
34
|
+
|
|
35
|
+
asMeasurement
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
</td><td>
|
|
39
|
+
|
|
40
|
+
boolean
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
</td><td>
|
|
44
|
+
|
|
45
|
+
_(Optional)_ Whether to return data in Sentry measurement format with units.
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
</td></tr>
|
|
49
|
+
</tbody></table>
|
|
50
|
+
|
|
51
|
+
**Returns:**
|
|
52
|
+
|
|
53
|
+
Record<string, any>
|
|
54
|
+
|
|
55
|
+
Process statistics including heap usage, RSS memory, and capacity metrics.
|
|
56
|
+
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [server](./server.md) > [Telemetry](./server.telemetry.md) > [initializeSentry](./server.telemetry.initializesentry.md)
|
|
4
|
+
|
|
5
|
+
## Telemetry.initializeSentry() method
|
|
6
|
+
|
|
7
|
+
Initializes Sentry telemetry with the provided DSN.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
static initializeSentry(sentryDsn: string, tickTimeMsThreshold?: number): void;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
<table><thead><tr><th>
|
|
18
|
+
|
|
19
|
+
Parameter
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
</th><th>
|
|
23
|
+
|
|
24
|
+
Type
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
</th><th>
|
|
28
|
+
|
|
29
|
+
Description
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
</th></tr></thead>
|
|
33
|
+
<tbody><tr><td>
|
|
34
|
+
|
|
35
|
+
sentryDsn
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
</td><td>
|
|
39
|
+
|
|
40
|
+
string
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
</td><td>
|
|
44
|
+
|
|
45
|
+
The Sentry Data Source Name (DSN) for your project.
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
</td></tr>
|
|
49
|
+
<tr><td>
|
|
50
|
+
|
|
51
|
+
tickTimeMsThreshold
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
</td><td>
|
|
55
|
+
|
|
56
|
+
number
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
</td><td>
|
|
60
|
+
|
|
61
|
+
_(Optional)_ The tick duration that must be exceeded to send a performance span to Sentry for a given tick. Defaults to 50ms.
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
</td></tr>
|
|
65
|
+
</tbody></table>
|
|
66
|
+
|
|
67
|
+
**Returns:**
|
|
68
|
+
|
|
69
|
+
void
|
|
70
|
+
|
|
71
|
+
## Remarks
|
|
72
|
+
|
|
73
|
+
This method configures Sentry for error tracking and performance monitoring. It sets up filtering to only send performance spans that exceed the provided threshold duration, reducing noise and costs. The initialization includes game-specific tags and process statistics attachment.
|
|
74
|
+
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [server](./server.md) > [Telemetry](./server.telemetry.md)
|
|
4
|
+
|
|
5
|
+
## Telemetry class
|
|
6
|
+
|
|
7
|
+
Manages performance telemetry and error tracking through your Sentry.io account.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
export default class Telemetry
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Remarks
|
|
16
|
+
|
|
17
|
+
The Telemetry class provides low-overhead performance monitoring and error tracking through Sentry (https://sentry.io) integration and your provided Sentry DSN. It automatically tracks critical game loop operations like physics simulation, entity updates, network synchronization, and more. The system only sends telemetry data when errors or slow-tick performance issues are detected, minimizing bandwidth and storage costs.
|
|
18
|
+
|
|
19
|
+
## Example
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
// Initialize Sentry for production telemetry
|
|
24
|
+
Telemetry.initializeSentry('MY_SENTRY_PROJECT_DSN');
|
|
25
|
+
|
|
26
|
+
// Wrap performance-critical code in spans
|
|
27
|
+
Telemetry.startSpan({
|
|
28
|
+
operation: TelemetrySpanOperation.CUSTOM_OPERATION,
|
|
29
|
+
attributes: { // any arbitrary attributes you want to attach to the span
|
|
30
|
+
playerCount: world.playerManager.connectedPlayers.length,
|
|
31
|
+
entityCount: world.entityManager.entityCount,
|
|
32
|
+
},
|
|
33
|
+
}, () => {
|
|
34
|
+
// Your performance-critical code here
|
|
35
|
+
performExpensiveOperation();
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
// Get current process statistics
|
|
39
|
+
const stats = Telemetry.getProcessStats();
|
|
40
|
+
console.log(`Heap usage: ${stats.jsHeapUsagePercent * 100}%`);
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Methods
|
|
44
|
+
|
|
45
|
+
<table><thead><tr><th>
|
|
46
|
+
|
|
47
|
+
Method
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
</th><th>
|
|
51
|
+
|
|
52
|
+
Modifiers
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
</th><th>
|
|
56
|
+
|
|
57
|
+
Description
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
</th></tr></thead>
|
|
61
|
+
<tbody><tr><td>
|
|
62
|
+
|
|
63
|
+
[getProcessStats(asMeasurement)](./server.telemetry.getprocessstats.md)
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
</td><td>
|
|
67
|
+
|
|
68
|
+
`static`
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
</td><td>
|
|
72
|
+
|
|
73
|
+
Gets current process memory and performance statistics.
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
</td></tr>
|
|
77
|
+
<tr><td>
|
|
78
|
+
|
|
79
|
+
[initializeSentry(sentryDsn, tickTimeMsThreshold)](./server.telemetry.initializesentry.md)
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
</td><td>
|
|
83
|
+
|
|
84
|
+
`static`
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
</td><td>
|
|
88
|
+
|
|
89
|
+
Initializes Sentry telemetry with the provided DSN.
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
</td></tr>
|
|
93
|
+
<tr><td>
|
|
94
|
+
|
|
95
|
+
[sentry()](./server.telemetry.sentry.md)
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
</td><td>
|
|
99
|
+
|
|
100
|
+
`static`
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
</td><td>
|
|
104
|
+
|
|
105
|
+
Gets the Sentry SDK instance for advanced telemetry operations.
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
</td></tr>
|
|
109
|
+
<tr><td>
|
|
110
|
+
|
|
111
|
+
[startSpan(options, callback)](./server.telemetry.startspan.md)
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
</td><td>
|
|
115
|
+
|
|
116
|
+
`static`
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
</td><td>
|
|
120
|
+
|
|
121
|
+
Executes a callback function within a performance monitoring span.
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
</td></tr>
|
|
125
|
+
</tbody></table>
|
|
126
|
+
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [server](./server.md) > [Telemetry](./server.telemetry.md) > [sentry](./server.telemetry.sentry.md)
|
|
4
|
+
|
|
5
|
+
## Telemetry.sentry() method
|
|
6
|
+
|
|
7
|
+
Gets the Sentry SDK instance for advanced telemetry operations.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
static sentry(): typeof Sentry;
|
|
13
|
+
```
|
|
14
|
+
**Returns:**
|
|
15
|
+
|
|
16
|
+
typeof Sentry
|
|
17
|
+
|
|
18
|
+
The Sentry SDK instance.
|
|
19
|
+
|
|
20
|
+
## Remarks
|
|
21
|
+
|
|
22
|
+
This method provides direct access to the Sentry SDK for operations not covered by the Telemetry wrapper, such as custom error reporting, user context setting, or advanced span manipulation.
|
|
23
|
+
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [server](./server.md) > [Telemetry](./server.telemetry.md) > [startSpan](./server.telemetry.startspan.md)
|
|
4
|
+
|
|
5
|
+
## Telemetry.startSpan() method
|
|
6
|
+
|
|
7
|
+
Executes a callback function within a performance monitoring span.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
static startSpan<T>(options: TelemetrySpanOptions, callback: (span?: Sentry.Span) => T): T;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
<table><thead><tr><th>
|
|
18
|
+
|
|
19
|
+
Parameter
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
</th><th>
|
|
23
|
+
|
|
24
|
+
Type
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
</th><th>
|
|
28
|
+
|
|
29
|
+
Description
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
</th></tr></thead>
|
|
33
|
+
<tbody><tr><td>
|
|
34
|
+
|
|
35
|
+
options
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
</td><td>
|
|
39
|
+
|
|
40
|
+
[TelemetrySpanOptions](./server.telemetryspanoptions.md)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
</td><td>
|
|
44
|
+
|
|
45
|
+
Configuration for the telemetry span including operation type and attributes.
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
</td></tr>
|
|
49
|
+
<tr><td>
|
|
50
|
+
|
|
51
|
+
callback
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
</td><td>
|
|
55
|
+
|
|
56
|
+
(span?: Sentry.Span) => T
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
</td><td>
|
|
60
|
+
|
|
61
|
+
The function to execute within the performance span.
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
</td></tr>
|
|
65
|
+
</tbody></table>
|
|
66
|
+
|
|
67
|
+
**Returns:**
|
|
68
|
+
|
|
69
|
+
T
|
|
70
|
+
|
|
71
|
+
The return value of the callback function.
|
|
72
|
+
|
|
73
|
+
## Remarks
|
|
74
|
+
|
|
75
|
+
This method provides zero-overhead performance monitoring in development environments. In production with Sentry enabled and `SENTRY_ENABLE_TRACING=true`<!-- -->, it creates performance spans for monitoring. The span data is only transmitted to Sentry when performance issues are detected.
|
|
76
|
+
|
|
77
|
+
## Example
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
```typescript
|
|
81
|
+
const result = Telemetry.startSpan({
|
|
82
|
+
operation: TelemetrySpanOperation.ENTITIES_TICK,
|
|
83
|
+
attributes: {
|
|
84
|
+
entityCount: entities.length,
|
|
85
|
+
worldId: world.id,
|
|
86
|
+
},
|
|
87
|
+
}, () => {
|
|
88
|
+
return processEntities(entities);
|
|
89
|
+
});
|
|
90
|
+
```
|
|
91
|
+
|