diff --git a/Datadog/Example/Debugging/DebugWebviewViewController.swift b/Datadog/Example/Debugging/DebugWebviewViewController.swift index 48bb6fd9c0..5c5247957f 100644 --- a/Datadog/Example/Debugging/DebugWebviewViewController.swift +++ b/Datadog/Example/Debugging/DebugWebviewViewController.swift @@ -85,7 +85,7 @@ class WebviewViewController: UIViewController { super.viewDidLoad() let controller = WKUserContentController() - controller.addDatadogMessageHandler(allowedWebViewHosts: ["datadoghq.dev"]) + controller.addDatadogMessageHandler(allowedWebViewHosts: [request.url!.host!]) let config = WKWebViewConfiguration() config.userContentController = controller diff --git a/Sources/Datadog/FeaturesIntegration/WebView/WebLogEventConsumer.swift b/Sources/Datadog/FeaturesIntegration/WebView/WebLogEventConsumer.swift index 53902f06e0..0f01e55b2c 100644 --- a/Sources/Datadog/FeaturesIntegration/WebView/WebLogEventConsumer.swift +++ b/Sources/Datadog/FeaturesIntegration/WebView/WebLogEventConsumer.swift @@ -60,10 +60,10 @@ internal class DefaultWebLogEventConsumer: WebLogEventConsumer { mutableEvent[Constants.ddTagsKey] = ddTags } - if let date = mutableEvent[Constants.dateKey] as? Int { - let serverTimeOffsetInNs = dateCorrector.currentCorrection.serverTimeOffset.toInt64Nanoseconds - let correctedDate = Int64(date) + serverTimeOffsetInNs - mutableEvent[Constants.dateKey] = correctedDate + if let timestampInMs = mutableEvent[Constants.dateKey] as? Int { + let serverTimeOffsetInMs = dateCorrector.currentCorrection.serverTimeOffset.toInt64Milliseconds + let correctedTimestamp = Int64(timestampInMs) + serverTimeOffsetInMs + mutableEvent[Constants.dateKey] = correctedTimestamp } if let context = rumContextProvider?.context { diff --git a/Tests/DatadogTests/Datadog/RUM/WebView/WebLogEventConsumerTests.swift b/Tests/DatadogTests/Datadog/RUM/WebView/WebLogEventConsumerTests.swift index be1c9ea46e..9915d2237a 100644 --- a/Tests/DatadogTests/Datadog/RUM/WebView/WebLogEventConsumerTests.swift +++ b/Tests/DatadogTests/Datadog/RUM/WebView/WebLogEventConsumerTests.swift @@ -14,7 +14,7 @@ class WebLogEventConsumerTests: XCTestCase { let mockContextProvider = RUMContextProviderMock(context: .mockWith(rumApplicationID: "123456")) func testWhenValidWebLogEventPassed_itDecoratesAndPassesToWriter() throws { - let mockSessionID = UUID(uuidString: "e9796469-c2a1-43d6-b0f6-65c47d33cf5f")! + let mockSessionID: UUID = .mockRandom() mockContextProvider.context.sessionID = RUMUUID(rawValue: mockSessionID) mockDateCorrector.correctionOffset = 123 let applicationVersion = String.mockRandom() @@ -37,7 +37,7 @@ class WebLogEventConsumerTests: XCTestCase { "view": ["referrer": "", "url": "https://datadoghq.dev/browser-sdk-test-playground"] ] let expectedWebLogEvent: JSON = [ - "date": 1_635_932_927_012 + 123.toInt64Nanoseconds, + "date": 1_635_932_927_012 + 123.toInt64Milliseconds, "error": ["origin": "console"], "message": "console error: error", "application_id": "123456", @@ -58,7 +58,7 @@ class WebLogEventConsumerTests: XCTestCase { } func testWhenValidWebInternalLogEventPassed_itDecoratesAndPassesToWriter() throws { - let mockSessionID = UUID(uuidString: "e9796469-c2a1-43d6-b0f6-65c47d33cf5f")! + let mockSessionID: UUID = .mockRandom() mockContextProvider.context.sessionID = RUMUUID(rawValue: mockSessionID) mockDateCorrector.correctionOffset = 123 let applicationVersion = String.mockRandom() @@ -81,7 +81,7 @@ class WebLogEventConsumerTests: XCTestCase { "view": ["referrer": "", "url": "https://datadoghq.dev/browser-sdk-test-playground"] ] let expectedWebLogEvent: JSON = [ - "date": 1_635_932_927_012 + 123.toInt64Nanoseconds, + "date": 1_635_932_927_012 + 123.toInt64Milliseconds, "error": ["origin": "console"], "message": "console error: error", "application_id": "123456",