Skip to content

Commit e573519

Browse files
authored
Merge pull request #2083 from ahoppen/localconnection-request-duration
Log request durations from `LocalConnection`
2 parents ea1f187 + c6e1e92 commit e573519

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

Sources/LanguageServerProtocolExtensions/LocalConnection.swift

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
import Dispatch
14+
import Foundation
1415
package import LanguageServerProtocol
1516
import LanguageServerProtocolJSONRPC
1617
import SKLogging
@@ -126,20 +127,23 @@ package final class LocalConnection: Connection, Sendable {
126127
}
127128

128129
precondition(self.state == .started)
130+
let startDate = Date()
129131
handler.handle(request, id: id) { result in
130132
switch result {
131133
case .success(let response):
132134
logger.info(
133135
"""
134-
Received reply for request \(id, privacy: .public) from \(self.name, privacy: .public)
136+
Received reply for request \(id, privacy: .public) from \(self.name, privacy: .public) \
137+
(took \(Date().timeIntervalSince(startDate) * 1000, privacy: .public)ms)
135138
\(Request.method, privacy: .public)
136139
\(response.forLogging)
137140
"""
138141
)
139142
case .failure(let error):
140143
logger.error(
141144
"""
142-
Received error for request \(id, privacy: .public) from \(self.name, privacy: .public)
145+
Received error for request \(id, privacy: .public) from \(self.name, privacy: .public) \
146+
(took \(Date().timeIntervalSince(startDate) * 1000, privacy: .public)ms)
143147
\(Request.method, privacy: .public)
144148
\(error.forLogging)
145149
"""

0 commit comments

Comments
 (0)