Timo
c3edd3e25e
Enable lint rules for Promise handling to discourage misuse of them. ( #2607 )
...
* Enable lint rules for Promise handling to discourage misuse of them.
Squashed all of Hugh's commits into one.
---------
Co-authored-by: Hugh Nimmo-Smith <hughns@element.io >
2024-09-10 09:49:35 +02:00
fkwp
9add3e52c4
Update file headers copyright and change licence to AGPL-3.0-only
2024-09-06 10:22:13 +02:00
renovate[bot]
c2cc0937c1
Update typescript-eslint monorepo to v8 (major) ( #2523 )
...
* Update typescript-eslint monorepo to v8
* es lint fixes
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Timo <toger5@hotmail.de >
2024-09-03 17:14:27 +02:00
Richard van der Hoff
b79a405ed6
Make js-sdk imports consistent ( #2590 )
...
We need to be consistent about whether we import matrix-js-sdk from `src` or
`lib`, otherwise we get two copies of matrix-js-sdk, and everything explodes.
2024-08-29 12:37:52 -04:00
Robin
5eaabcf74d
Clean up our tests in preparation for the testing sprint ( #2466 )
...
* Fix coverage reporting
Codecov hasn't been working recently because Vitest doesn't report coverage by default.
* Suppress some noisy log lines
Closes https://github.com/element-hq/element-call/issues/686
* Store test files alongside source files
This way we benefit from not having to maintain the same directory structure twice, and our linters etc. will actually lint test files by default.
* Stop using Vitest globals
Vitest provides globals primarily to make the transition from Jest more smooth. But importing its functions explicitly is considered a better pattern, and we have so few tests right now that it's trivial to migrate them all.
* Remove Storybook directory
We no longer use Storybook.
* Configure Codecov
Add a coverage gate for all new changes and disable its comments.
* upgrade vitest
---------
Co-authored-by: Timo <toger5@hotmail.de >
2024-08-27 15:45:39 +02:00
Robin
4db7c2bc68
Fix type errors
2024-06-24 10:31:50 -04:00
Robin
614bc82402
Format code
2023-10-11 10:42:04 -04:00
Robin
a7624806b2
Upgrade eslint-plugin-matrix-org to 1.2.1
...
This upgrade came with a number of new lints that needed to be fixed across the code base. Primarily: explicit return types on functions, and explicit visibility modifiers on class members.
2023-09-22 18:07:06 -04:00
Daniel Abramov
0105162ffa
Enable strict lints
...
An attempt to fix https://github.com/vector-im/element-call/issues/1132
2023-07-11 16:02:58 +01:00
Enrico Schwendig
8f8dd5f803
Display active tracks in OTel metrics ( #1085 )
...
* Add track, feed and transceiver spans under call span
2023-06-07 16:40:47 +02:00
Enrico Schwendig
f0a6f5919e
move webrtc etc. events from groupCall to matrix.call span ( #1080 )
...
* add new linked span for connection stats
* move stats span under call span and add user attribute
* Update matrix-js-sdk
2023-06-06 08:28:53 +02:00
Timo
f0f2ffe972
add audio concealment to posthog exporter ( #1042 )
...
* add audio concealment to posthog exporter
2023-05-14 16:36:41 +02:00
David Baker
515e00b763
Merge pull request #1030 from vector-im/dbkr/include_org_matrix_call
...
Include org.matrix.call events in sent events for OTel
2023-04-28 09:11:18 +01:00
David Baker
403ee79d61
Include org.matrix.call events in sent events for OTel
2023-04-27 18:01:40 +01:00
Timo K
ecf5f9916c
otel read through code
2023-04-27 14:00:40 +02:00
David Baker
7153ead8cb
Remove the console exporter
...
I'm not sure how this got left in, presumably it was not intended.
2023-04-24 19:52:56 +01:00
David Baker
32476571fb
End spans when calls are replaced by a different call
2023-04-24 17:57:05 +01:00
Robin
7221b7c3a2
Merge pull request #998 from robintown/rageshake-processor
...
Include unended spans in rageshakes
2023-04-14 11:55:16 -04:00
Robin Townsend
da7760d7ab
Send rejoin events to PostHog in realtime
...
By converting PosthogSpanExporter to a SpanProcessor just like the RageshakeSpanProcessor, it can now monitor spans in realtime as they are started.
2023-04-12 18:14:59 -04:00
Robin Townsend
a17ffcc327
Include unended spans in rageshakes
...
By turning the RageshakeSpanExporter into a SpanProcessor, it can now be notified of spans as soon as they're started.
2023-04-12 17:12:02 -04:00
Robin Townsend
0637804d61
Fix a crash when adding call events to telemetry
...
Since typeof null is 'object', the flattenVoipEventRecursive function was mistakenly casting nulls to Record<string, unknown> in its typeof v === "object" case, causing Object.entries to explode.
2023-04-11 23:05:37 -04:00
Robin Townsend
95eca18207
Include OpenTelemetry traces in rageshakes
2023-04-11 01:13:19 -04:00
Enrico Schwendig
bb5c382fd0
separate summary report from stats report ( #986 )
...
* stats: separate summary report from stats report
* stats: switch to last summery stats builder
* stats: update matrix-js-sdk
2023-04-06 13:19:39 +02:00
David Baker
dd1485a277
Merge pull request #988 from vector-im/dbkr/enable_otel_by_collector
...
Allow different OpenTelemetry collectors to be enabled/disabled
2023-04-05 20:05:41 +01:00
David Baker
caea22fa89
Remove the recheck callback since it isn't necessary for now
2023-04-05 19:00:07 +01:00
David Baker
88f3b30040
Allow different OpenTelemetry collectors to be enabled/disabled
...
Always enable OpenTelemetry, but conditionally enable the OTLP
exporter, as per comment.
Fixes https://github.com/vector-im/element-call/issues/987
2023-04-05 18:21:29 +01:00
Robin Townsend
928f1c1d6f
Address review feedback
2023-04-05 12:56:50 -04:00
Robin Townsend
711cdf9a60
Merge branch 'main' into audio-observability
2023-04-05 12:50:38 -04:00
David Baker
fec299ab20
Skip whole block if no otel instance
2023-04-05 15:11:51 +01:00
David Baker
0dcaa90650
Fix exception when loading PostHog
...
PostHog was expecting the matrix client object to be initialised at
the point it ran its setup, which wasn't the case. Check to see if it's
there on login and add an onLoginStatusChanged hook that to re-check.
Also make a few methods private that didn't need to be public.
Also fix a few instances where the OpenTelemetry group call tried to
report metrics using a tracer which didn't exist anymore, if the user
disabled analytics and then joined the same call again.
2023-04-05 13:06:55 +01:00
David Baker
b061cbfb2f
Remove the other listeners
2023-04-05 10:01:58 +01:00
David Baker
23ddd73f4f
Merge remote-tracking branch 'origin/main' into dbkr/otel_peerconn_events
2023-04-05 09:35:43 +01:00
Enrico Schwendig
390442a4c3
Add webrtc metric to OTel ( #974 )
...
* stats: Add summery report
---------
Co-authored-by: David Baker <dave@matrix.org >
2023-04-05 10:25:26 +02:00
David Baker
c824ea6f9a
Add OpenTelemetry events for PeerConnection state changes / errors
...
Creates a new class to represent individual calls and adds the listeners
there.
Requires https://github.com/matrix-org/matrix-js-sdk/pull/3251
Based on https://github.com/vector-im/element-call/pull/974
2023-04-04 18:00:45 +01:00
David Baker
28196a2e9d
Merge pull request #981 from vector-im/dbkr/call_events_to_call_span
...
Move call events to the call span
2023-04-04 17:52:41 +01:00
David Baker
5b70def4d2
Add null check for call span
2023-04-04 17:49:49 +01:00
David Baker
2cd549cdc8
Merge pull request #982 from vector-im/dbkr/otel_flatten_include_booleans
...
Include booleans in flattened OpenTelemetry object
2023-04-04 17:26:20 +01:00
David Baker
30f75c6cd2
Don't pass null / undefined as attribute value
2023-04-03 17:41:40 +01:00
David Baker
8fa23b7da9
Include booleans in flattened OpenTelemetry object
2023-04-03 16:58:29 +01:00
David Baker
277081ee2a
Move call events to the call span
2023-04-03 14:35:04 +01:00
David Baker
3a7983d2de
Add displayname on call spans
2023-04-03 14:31:17 +01:00
Enrico Schwendig
3b06258e40
stats: rename enum to avoid shadow values
2023-04-03 14:07:29 +02:00
Enrico Schwendig
889a31489b
stats: fix typo
2023-04-03 12:37:55 +02:00
Enrico Schwendig
dd67a45671
stats: Add summery report
2023-03-31 14:57:56 +02:00
Enrico Schwendig
707272bf19
Merge branch 'dbkr/otel' into enricoschw/real-time-media-statistics-for-full-mesh
2023-03-31 13:14:49 +02:00
David Baker
c2b78d59c6
Add more events:
...
* VoIP events received
* Call errors
* Group call errors
* Undecryptable to-device events
2023-03-30 16:54:10 +01:00
David Baker
f96ce8985d
Only enable otel if we have a collector URL
2023-03-29 16:04:11 +01:00
David Baker
4bf1fbfd8e
Gah, the sentry logger
2023-03-29 13:31:47 +01:00
David Baker
77c6357b08
Use js-sdk from hangup refactor branch
...
https://github.com/matrix-org/matrix-js-sdk/pull/3234
2023-03-29 12:28:04 +01:00
Enrico Schwendig
66c3d05ae9
docu: Add webrtc metric to OTel
2023-03-28 11:51:15 +02:00