Skip to content

Commit 5b5dcee

Browse files
authored
Merge pull request #5798 from cloudflare/felix/100925-fix-event-reporting
[o11y][nfc] Require getEventInfo() to be defined to ensure EventInfo is present
2 parents 18f01cb + 7a89327 commit 5b5dcee

File tree

11 files changed

+29
-34
lines changed

11 files changed

+29
-34
lines changed

src/workerd/api/hibernatable-web-socket.c++

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -185,26 +185,26 @@ HibernatableWebSocketCustomEvent::HibernatableWebSocketCustomEvent(
185185
manager(manager) {}
186186

187187
// TODO(cleanup): Try to reduce duplication with consumeParams()
188-
kj::Maybe<tracing::EventInfo> HibernatableWebSocketCustomEvent::getEventInfo() const {
188+
tracing::EventInfo HibernatableWebSocketCustomEvent::getEventInfo() const {
189189
// Try to extract event type from params if available
190190
KJ_SWITCH_ONEOF(params) {
191191
KJ_CASE_ONEOF(socketParams, HibernatableSocketParams) {
192192
KJ_SWITCH_ONEOF(socketParams.eventType) {
193193
KJ_CASE_ONEOF(text, HibernatableSocketParams::Text) {
194-
return tracing::EventInfo(tracing::HibernatableWebSocketEventInfo(
195-
tracing::HibernatableWebSocketEventInfo::Message()));
194+
return tracing::HibernatableWebSocketEventInfo(
195+
tracing::HibernatableWebSocketEventInfo::Message());
196196
}
197197
KJ_CASE_ONEOF(data, HibernatableSocketParams::Data) {
198-
return tracing::EventInfo(tracing::HibernatableWebSocketEventInfo(
199-
tracing::HibernatableWebSocketEventInfo::Message()));
198+
return tracing::HibernatableWebSocketEventInfo(
199+
tracing::HibernatableWebSocketEventInfo::Message());
200200
}
201201
KJ_CASE_ONEOF(close, HibernatableSocketParams::Close) {
202-
return tracing::EventInfo(tracing::HibernatableWebSocketEventInfo(
203-
tracing::HibernatableWebSocketEventInfo::Close{close.code, close.wasClean}));
202+
return tracing::HibernatableWebSocketEventInfo(
203+
tracing::HibernatableWebSocketEventInfo::Close{close.code, close.wasClean});
204204
}
205205
KJ_CASE_ONEOF(error, HibernatableSocketParams::Error) {
206-
return tracing::EventInfo(tracing::HibernatableWebSocketEventInfo(
207-
tracing::HibernatableWebSocketEventInfo::Error()));
206+
return tracing::HibernatableWebSocketEventInfo(
207+
tracing::HibernatableWebSocketEventInfo::Error());
208208
}
209209
}
210210
}
@@ -214,17 +214,16 @@ kj::Maybe<tracing::EventInfo> HibernatableWebSocketCustomEvent::getEventInfo() c
214214
switch (payload.which()) {
215215
case rpc::HibernatableWebSocketEventMessage::Payload::TEXT:
216216
case rpc::HibernatableWebSocketEventMessage::Payload::DATA:
217-
return tracing::EventInfo(tracing::HibernatableWebSocketEventInfo(
218-
tracing::HibernatableWebSocketEventInfo::Message()));
217+
return tracing::HibernatableWebSocketEventInfo(
218+
tracing::HibernatableWebSocketEventInfo::Message());
219219
case rpc::HibernatableWebSocketEventMessage::Payload::CLOSE: {
220220
auto close = payload.getClose();
221-
return tracing::EventInfo(tracing::HibernatableWebSocketEventInfo(
222-
tracing::HibernatableWebSocketEventInfo::Close{
223-
close.getCode(), close.getWasClean()}));
221+
return tracing::HibernatableWebSocketEventInfo(
222+
tracing::HibernatableWebSocketEventInfo::Close{close.getCode(), close.getWasClean()});
224223
}
225224
case rpc::HibernatableWebSocketEventMessage::Payload::ERROR:
226-
return tracing::EventInfo(tracing::HibernatableWebSocketEventInfo(
227-
tracing::HibernatableWebSocketEventInfo::Error()));
225+
return tracing::HibernatableWebSocketEventInfo(
226+
tracing::HibernatableWebSocketEventInfo::Error());
228227
}
229228
KJ_UNREACHABLE;
230229
}

src/workerd/api/hibernatable-web-socket.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ class HibernatableWebSocketCustomEvent final: public WorkerInterface::CustomEven
7777
return typeId;
7878
}
7979

80-
kj::Maybe<tracing::EventInfo> getEventInfo() const override;
80+
tracing::EventInfo getEventInfo() const override;
8181

8282
kj::Promise<Result> notSupported() override {
8383
KJ_UNIMPLEMENTED("hibernatable web socket event not supported");

src/workerd/api/queue.c++

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -530,7 +530,7 @@ StartQueueEventResponse startQueueEvent(EventTarget& globalEventTarget,
530530

531531
} // namespace
532532

533-
kj::Maybe<tracing::EventInfo> QueueCustomEvent::getEventInfo() const {
533+
tracing::EventInfo QueueCustomEvent::getEventInfo() const {
534534
kj::String queueName;
535535
uint32_t batchSize;
536536
KJ_SWITCH_ONEOF(params) {
@@ -544,7 +544,7 @@ kj::Maybe<tracing::EventInfo> QueueCustomEvent::getEventInfo() const {
544544
}
545545
}
546546

547-
return tracing::EventInfo(tracing::QueueEventInfo(kj::mv(queueName), batchSize));
547+
return tracing::QueueEventInfo(kj::mv(queueName), batchSize);
548548
}
549549

550550
kj::Promise<WorkerInterface::CustomEvent::Result> QueueCustomEvent::run(

src/workerd/api/queue.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -353,7 +353,7 @@ class QueueCustomEvent final: public WorkerInterface::CustomEvent, public kj::Re
353353
return EVENT_TYPE;
354354
}
355355

356-
kj::Maybe<tracing::EventInfo> getEventInfo() const override;
356+
tracing::EventInfo getEventInfo() const override;
357357

358358
QueueRetryBatch getRetryBatch() const {
359359
return {.retry = result.retryBatch.retry, .delaySeconds = result.retryBatch.delaySeconds};

src/workerd/api/trace.c++

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -639,8 +639,8 @@ kj::Promise<void> sendTracesToExportedHandler(kj::Own<IoContext::IncomingRequest
639639
}
640640
} // namespace
641641

642-
kj::Maybe<tracing::EventInfo> TraceCustomEvent::getEventInfo() const {
643-
return tracing::EventInfo(tracing::TraceEventInfo(traces));
642+
tracing::EventInfo TraceCustomEvent::getEventInfo() const {
643+
return tracing::TraceEventInfo(traces);
644644
}
645645

646646
auto TraceCustomEvent::run(kj::Own<IoContext::IncomingRequest> incomingRequest,

src/workerd/api/trace.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -629,7 +629,7 @@ class TraceCustomEvent final: public WorkerInterface::CustomEvent {
629629
return typeId;
630630
}
631631

632-
kj::Maybe<tracing::EventInfo> getEventInfo() const override;
632+
tracing::EventInfo getEventInfo() const override;
633633

634634
kj::Promise<Result> notSupported() override {
635635
KJ_UNIMPLEMENTED("trace event not supported");

src/workerd/api/worker-rpc.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -468,8 +468,8 @@ class JsRpcSessionCustomEvent final: public WorkerInterface::CustomEvent {
468468
return typeId;
469469
}
470470

471-
kj::Maybe<tracing::EventInfo> getEventInfo() const override {
472-
return tracing::EventInfo(tracing::JsRpcEventInfo(nullptr));
471+
tracing::EventInfo getEventInfo() const override {
472+
return tracing::JsRpcEventInfo(nullptr);
473473
}
474474

475475
rpc::JsRpcTarget::Client getCap() {

src/workerd/io/trace-stream.c++

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -907,8 +907,8 @@ class TailStreamTarget final: public rpc::TailStreamTarget::Server {
907907
};
908908
} // namespace
909909

910-
kj::Maybe<EventInfo> TailStreamCustomEvent::getEventInfo() const {
911-
return EventInfo(TraceEventInfo(kj::Array<TraceEventInfo::TraceItem>(nullptr)));
910+
EventInfo TailStreamCustomEvent::getEventInfo() const {
911+
return TraceEventInfo(kj::Array<TraceEventInfo::TraceItem>(nullptr));
912912
}
913913

914914
kj::Promise<WorkerInterface::CustomEvent::Result> TailStreamCustomEvent::run(

src/workerd/io/trace-stream.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ class TailStreamCustomEvent final: public WorkerInterface::CustomEvent {
4343
return typeId;
4444
}
4545

46-
kj::Maybe<tracing::EventInfo> getEventInfo() const override;
46+
tracing::EventInfo getEventInfo() const override;
4747

4848
void failed(const kj::Exception& e) override {
4949
capFulfiller->reject(kj::cp(e));

src/workerd/io/worker-entrypoint.c++

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -798,9 +798,7 @@ kj::Promise<WorkerInterface::CustomEvent::Result> WorkerEntrypoint::customEvent(
798798
// any user code executes (particularly important for actors whose constructors may run
799799
// during delivered()).
800800
KJ_IF_SOME(t, incomingRequest->getWorkerTracer()) {
801-
KJ_IF_SOME(eventInfo, event->getEventInfo()) {
802-
t.setEventInfo(*incomingRequest, kj::mv(eventInfo));
803-
}
801+
t.setEventInfo(*incomingRequest, event->getEventInfo());
804802
}
805803

806804
auto promise = event->run(kj::mv(incomingRequest), entrypointName, kj::mv(props), waitUntilTasks)

0 commit comments

Comments
 (0)