Skip to content

Commit 7c63d08

Browse files
Merge pull request #144 from surfstudio/logging-improvement
Logging improvement
2 parents 989c0b3 + 157c496 commit 7c63d08

40 files changed

+716
-166
lines changed

NodeKit/NodeKit.xcodeproj/project.pbxproj

Lines changed: 48 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,14 @@
5656
50528E272BADF64F00E86CB6 /* NodeResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50528E262BADF64F00E86CB6 /* NodeResult.swift */; };
5757
50528E292BAE162600E86CB6 /* LoggerStreamNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50528E282BAE162600E86CB6 /* LoggerStreamNode.swift */; };
5858
50528E372BAE34A400E86CB6 /* TokenRefresherActorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50528E362BAE34A400E86CB6 /* TokenRefresherActorTests.swift */; };
59+
506091A62D1C40F60042B6EE /* Log.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506091A12D1C40F60042B6EE /* Log.swift */; };
60+
506091A72D1C40F60042B6EE /* LoggingProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506091A22D1C40F60042B6EE /* LoggingProxy.swift */; };
61+
506091A82D1C40F60042B6EE /* LogSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506091A32D1C40F60042B6EE /* LogSession.swift */; };
62+
506091A92D1C40F60042B6EE /* LogType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506091A42D1C40F60042B6EE /* LogType.swift */; };
63+
506091AD2D1C41460042B6EE /* LogChain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506091AB2D1C41460042B6EE /* LogChain.swift */; };
64+
506091AE2D1C41460042B6EE /* LogableChain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506091AC2D1C41460042B6EE /* LogableChain.swift */; };
65+
506091B12D1C424A0042B6EE /* LogSessionMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506091AF2D1C424A0042B6EE /* LogSessionMock.swift */; };
66+
506091B22D1C424A0042B6EE /* LoggingProxyMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506091B02D1C424A0042B6EE /* LoggingProxyMock.swift */; };
5967
5060A45C2BC3D8D2004E84E2 /* EntryinputDtoOutputNodeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5060A45B2BC3D8D2004E84E2 /* EntryinputDtoOutputNodeTests.swift */; };
6068
5060A4642BC3E660004E84E2 /* RequestSenderNodeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5060A4632BC3E660004E84E2 /* RequestSenderNodeTests.swift */; };
6169
5060A4662BC3E6E8004E84E2 /* URLSessionDataTaskActor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5060A4652BC3E6E8004E84E2 /* URLSessionDataTaskActor.swift */; };
@@ -200,9 +208,7 @@
200208
90B609BB283E1287006F4309 /* StateStorable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90B6097A283E1287006F4309 /* StateStorable.swift */; };
201209
90B609BD283E1287006F4309 /* UrlRouting.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90B6097D283E1287006F4309 /* UrlRouting.swift */; };
202210
90B609BE283E1287006F4309 /* LoggerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90B6097F283E1287006F4309 /* LoggerNode.swift */; };
203-
90B609BF283E1287006F4309 /* Logable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90B60980283E1287006F4309 /* Logable.swift */; };
204211
90B609C0283E1287006F4309 /* LoggerExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90B60981283E1287006F4309 /* LoggerExtensions.swift */; };
205-
90B609C1283E1287006F4309 /* Log.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90B60982283E1287006F4309 /* Log.swift */; };
206212
90B609EF283E16DC006F4309 /* DTOMapperNodeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90B609C5283E16DC006F4309 /* DTOMapperNodeTests.swift */; };
207213
90B609F3283E16DC006F4309 /* URLQueryDictionaryKeyEncodingDefaultStrategyTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90B609CE283E16DC006F4309 /* URLQueryDictionaryKeyEncodingDefaultStrategyTests.swift */; };
208214
90B609F4283E16DC006F4309 /* URLQueryArrayKeyEncodingBracketsStartegyTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90B609CF283E16DC006F4309 /* URLQueryArrayKeyEncodingBracketsStartegyTests.swift */; };
@@ -296,6 +302,14 @@
296302
50528E282BAE162600E86CB6 /* LoggerStreamNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoggerStreamNode.swift; sourceTree = "<group>"; };
297303
50528E302BAE1F9800E86CB6 /* LoggingContextMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoggingContextMock.swift; sourceTree = "<group>"; };
298304
50528E362BAE34A400E86CB6 /* TokenRefresherActorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TokenRefresherActorTests.swift; sourceTree = "<group>"; };
305+
506091A12D1C40F60042B6EE /* Log.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Log.swift; sourceTree = "<group>"; };
306+
506091A22D1C40F60042B6EE /* LoggingProxy.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LoggingProxy.swift; sourceTree = "<group>"; };
307+
506091A32D1C40F60042B6EE /* LogSession.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LogSession.swift; sourceTree = "<group>"; };
308+
506091A42D1C40F60042B6EE /* LogType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LogType.swift; sourceTree = "<group>"; };
309+
506091AB2D1C41460042B6EE /* LogChain.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LogChain.swift; sourceTree = "<group>"; };
310+
506091AC2D1C41460042B6EE /* LogableChain.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LogableChain.swift; sourceTree = "<group>"; };
311+
506091AF2D1C424A0042B6EE /* LogSessionMock.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LogSessionMock.swift; sourceTree = "<group>"; };
312+
506091B02D1C424A0042B6EE /* LoggingProxyMock.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LoggingProxyMock.swift; sourceTree = "<group>"; };
299313
5060A45B2BC3D8D2004E84E2 /* EntryinputDtoOutputNodeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EntryinputDtoOutputNodeTests.swift; sourceTree = "<group>"; };
300314
5060A4632BC3E660004E84E2 /* RequestSenderNodeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RequestSenderNodeTests.swift; sourceTree = "<group>"; };
301315
5060A4652BC3E6E8004E84E2 /* URLSessionDataTaskActor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = URLSessionDataTaskActor.swift; sourceTree = "<group>"; };
@@ -433,9 +447,7 @@
433447
90B6097A283E1287006F4309 /* StateStorable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StateStorable.swift; sourceTree = "<group>"; };
434448
90B6097D283E1287006F4309 /* UrlRouting.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UrlRouting.swift; sourceTree = "<group>"; };
435449
90B6097F283E1287006F4309 /* LoggerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LoggerNode.swift; sourceTree = "<group>"; };
436-
90B60980283E1287006F4309 /* Logable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Logable.swift; sourceTree = "<group>"; };
437450
90B60981283E1287006F4309 /* LoggerExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LoggerExtensions.swift; sourceTree = "<group>"; };
438-
90B60982283E1287006F4309 /* Log.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Log.swift; sourceTree = "<group>"; };
439451
90B609C5283E16DC006F4309 /* DTOMapperNodeTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DTOMapperNodeTests.swift; sourceTree = "<group>"; };
440452
90B609CE283E16DC006F4309 /* URLQueryDictionaryKeyEncodingDefaultStrategyTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = URLQueryDictionaryKeyEncodingDefaultStrategyTests.swift; sourceTree = "<group>"; };
441453
90B609CF283E16DC006F4309 /* URLQueryArrayKeyEncodingBracketsStartegyTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = URLQueryArrayKeyEncodingBracketsStartegyTests.swift; sourceTree = "<group>"; };
@@ -593,6 +605,26 @@
593605
path = Core;
594606
sourceTree = "<group>";
595607
};
608+
506091A52D1C40F60042B6EE /* Log */ = {
609+
isa = PBXGroup;
610+
children = (
611+
506091A12D1C40F60042B6EE /* Log.swift */,
612+
506091A22D1C40F60042B6EE /* LoggingProxy.swift */,
613+
506091A32D1C40F60042B6EE /* LogSession.swift */,
614+
506091A42D1C40F60042B6EE /* LogType.swift */,
615+
);
616+
path = Log;
617+
sourceTree = "<group>";
618+
};
619+
506091AA2D1C41120042B6EE /* Chain */ = {
620+
isa = PBXGroup;
621+
children = (
622+
506091AC2D1C41460042B6EE /* LogableChain.swift */,
623+
506091AB2D1C41460042B6EE /* LogChain.swift */,
624+
);
625+
path = Chain;
626+
sourceTree = "<group>";
627+
};
596628
506150AE2BBC24AE00EBBE96 /* Combine */ = {
597629
isa = PBXGroup;
598630
children = (
@@ -681,6 +713,8 @@
681713
50816AE52BC706D100A43F3D /* NodeKitMock */ = {
682714
isa = PBXGroup;
683715
children = (
716+
506091B02D1C424A0042B6EE /* LoggingProxyMock.swift */,
717+
506091AF2D1C424A0042B6EE /* LogSessionMock.swift */,
684718
5013490D2BE3CB05002CC3DA /* Builder */,
685719
50816B002BC7071800A43F3D /* Utils */,
686720
50528E302BAE1F9800E86CB6 /* LoggingContextMock.swift */,
@@ -1110,10 +1144,10 @@
11101144
90B6097E283E1287006F4309 /* Logging */ = {
11111145
isa = PBXGroup;
11121146
children = (
1147+
506091AA2D1C41120042B6EE /* Chain */,
1148+
506091A52D1C40F60042B6EE /* Log */,
11131149
90B6097F283E1287006F4309 /* LoggerNode.swift */,
1114-
90B60980283E1287006F4309 /* Logable.swift */,
11151150
90B60981283E1287006F4309 /* LoggerExtensions.swift */,
1116-
90B60982283E1287006F4309 /* Log.swift */,
11171151
502F9D962BAA36CF00151A8D /* LoggingContext.swift */,
11181152
50528E282BAE162600E86CB6 /* LoggerStreamNode.swift */,
11191153
);
@@ -1401,6 +1435,7 @@
14011435
5013494A2BE3F8F3002CC3DA /* URLRouteProviderMock.swift in Sources */,
14021436
50816B092BC7078000A43F3D /* Result+Extension.swift in Sources */,
14031437
50816B0B2BC7079300A43F3D /* Array+Extension.swift in Sources */,
1438+
506091B12D1C424A0042B6EE /* LogSessionMock.swift in Sources */,
14041439
5097DF3C2BCD556E00D422EE /* AsyncPagerDataProviderMock.swift in Sources */,
14051440
50816B0E2BC7079900A43F3D /* RawEncodableMock.swift in Sources */,
14061441
50816B182BC707AE00A43F3D /* AborterMock.swift in Sources */,
@@ -1418,6 +1453,7 @@
14181453
501349132BE3D790002CC3DA /* ChainConfigBuilderMock.swift in Sources */,
14191454
50816B1B2BC707B400A43F3D /* CombineCompatibleNodeMock.swift in Sources */,
14201455
50816B232BC707C300A43F3D /* MultipartFormDataMock.swift in Sources */,
1456+
506091B22D1C424A0042B6EE /* LoggingProxyMock.swift in Sources */,
14211457
50816B152BC707A800A43F3D /* URLProtocolMock.swift in Sources */,
14221458
50816B212BC707BF00A43F3D /* MockError.swift in Sources */,
14231459
50816B1D2BC707B800A43F3D /* DTOConvertibleMock.swift in Sources */,
@@ -1443,8 +1479,10 @@
14431479
90B6099B283E1287006F4309 /* RequestAborterNode.swift in Sources */,
14441480
5005EB232BB8A6D900B670CD /* AsyncStreamNode.swift in Sources */,
14451481
5013491F2BE3F4AA002CC3DA /* URLETagSaverNode.swift in Sources */,
1482+
506091A72D1C40F60042B6EE /* LoggingProxy.swift in Sources */,
14461483
90B609AC283E1287006F4309 /* DefaultLogOrder.swift in Sources */,
14471484
50C57AB72BE3871D004C344E /* ServiceChainProvider.swift in Sources */,
1485+
506091AE2D1C41460042B6EE /* LogableChain.swift in Sources */,
14481486
50B569702BCFED6F0054DC09 /* AsyncNodeSubscription.swift in Sources */,
14491487
90B609BD283E1287006F4309 /* UrlRouting.swift in Sources */,
14501488
501349342BE3F6A1002CC3DA /* TransportURLParameters.swift in Sources */,
@@ -1464,7 +1502,6 @@
14641502
90B609B1283E1287006F4309 /* MultipartRequestCreatorNode.swift in Sources */,
14651503
50B569782BCFEF610054DC09 /* AsyncStreamNodeResultPublisher.swift in Sources */,
14661504
90B6098A283E1287006F4309 /* ParametersEncoding.swift in Sources */,
1467-
90B609BF283E1287006F4309 /* Logable.swift in Sources */,
14681505
501349282BE3F57B002CC3DA /* URLRouteProvider.swift in Sources */,
14691506
5097DFB02BCDFB5200D422EE /* CancellableTask.swift in Sources */,
14701507
90B609BB283E1287006F4309 /* StateStorable.swift in Sources */,
@@ -1513,6 +1550,7 @@
15131550
5013491B2BE3F40B002CC3DA /* URLNotModifiedTriggerNode.swift in Sources */,
15141551
5013491D2BE3F467002CC3DA /* URLCacheWriterNode.swift in Sources */,
15151552
90B6091A283E1268006F4309 /* RawMappable+Dictionary.swift in Sources */,
1553+
506091A82D1C40F60042B6EE /* LogSession.swift in Sources */,
15161554
90B609A7283E1287006F4309 /* RawEncoderNode.swift in Sources */,
15171555
90B609B9283E1287006F4309 /* AsyncPagerIterator.swift in Sources */,
15181556
50528E272BADF64F00E86CB6 /* NodeResult.swift in Sources */,
@@ -1521,13 +1559,15 @@
15211559
90B6091B283E1268006F4309 /* Array+RawMappable.swift in Sources */,
15221560
5060A4662BC3E6E8004E84E2 /* URLSessionDataTaskActor.swift in Sources */,
15231561
90B6098D283E1287006F4309 /* Method.swift in Sources */,
1562+
506091A62D1C40F60042B6EE /* Log.swift in Sources */,
15241563
502F9D972BAA36CF00151A8D /* LoggingContext.swift in Sources */,
15251564
90B60988283E1287006F4309 /* URLQueryArrayKeyEncodingStartegy.swift in Sources */,
15261565
50B569762BCFEF470054DC09 /* NodeResultPublisher.swift in Sources */,
15271566
390E69752A136591007F2304 /* RequestEncodingModel.swift in Sources */,
15281567
501349152BE3E6D2002CC3DA /* AnyAsyncNode.swift in Sources */,
15291568
90B609AF283E1287006F4309 /* RequestCreatorNode.swift in Sources */,
15301569
501349252BE3F543002CC3DA /* URLJsonRequestEncodingNode.swift in Sources */,
1570+
506091A92D1C40F60042B6EE /* LogType.swift in Sources */,
15311571
90B60994283E1287006F4309 /* MetadataConnectorNode.swift in Sources */,
15321572
90B609B7283E1287006F4309 /* MetadataProvider.swift in Sources */,
15331573
90B60997283E1287006F4309 /* VoidOutputNode.swift in Sources */,
@@ -1537,7 +1577,7 @@
15371577
50B5697A2BCFF1A10054DC09 /* CombineCompatibleNode.swift in Sources */,
15381578
5060A4962BC44225004E84E2 /* EntryInputDtoOutputNode.swift in Sources */,
15391579
502F9DA92BAB0CF000151A8D /* TokenRefresherActor.swift in Sources */,
1540-
90B609C1283E1287006F4309 /* Log.swift in Sources */,
1580+
506091AD2D1C41460042B6EE /* LogChain.swift in Sources */,
15411581
90B6091D283E1268006F4309 /* DTOConvertible+Dictionary.swift in Sources */,
15421582
);
15431583
runOnlyForDeploymentPostprocessing = 0;

NodeKit/NodeKit/CacheNode/IfServerFailsFromCacheNode.swift

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,23 +50,23 @@ open class IfConnectionFailedFromCacheNode: AsyncNode {
5050

5151
// MARK: - Private Method
5252

53-
private func makeBaseTechinalLog(with error: Error) -> Log {
54-
return Log(
55-
logViewObjectName +
53+
private func makeBaseTechinalLog(with error: Error) -> LogChain {
54+
return LogChain(
5655
"Catching \(error)" + .lineTabDeilimeter +
5756
"Start read cache" + .lineTabDeilimeter,
58-
id: objectName
57+
id: objectName,
58+
logType: .failure
5959
)
6060
}
6161

62-
private func makeLog(with error: Error, from request: URLNetworkRequest) -> Log {
63-
return Log(
64-
logViewObjectName +
62+
private func makeLog(with error: Error, from request: URLNetworkRequest) -> LogChain {
63+
return LogChain(
6564
"Catching \(error)" + .lineTabDeilimeter +
6665
"Error is \(type(of: error))" +
6766
"and request = \(String(describing: request))" + .lineTabDeilimeter +
6867
"-> throw error",
69-
id: objectName
68+
id: objectName,
69+
logType: .failure
7070
)
7171
}
7272

NodeKit/NodeKit/CacheNode/URLNotModifiedTriggerNode.swift

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -58,19 +58,21 @@ open class URLNotModifiedTriggerNode: AsyncNode {
5858

5959
// MARK: - Private Methods
6060

61-
private func makeErrorLog(code: Int) -> Log {
61+
private func makeErrorLog(code: Int) -> LogChain {
6262
let msg = "Response status code = \(code) != 304 -> skip cache reading"
63-
return Log(
64-
logViewObjectName + msg,
65-
id: objectName
63+
return LogChain(
64+
msg,
65+
id: objectName,
66+
logType: .failure
6667
)
6768
}
6869

69-
private func makeSuccessLog() -> Log {
70+
private func makeSuccessLog() -> LogChain {
7071
let msg = "Response status code == 304 -> read cache"
71-
return Log(
72-
logViewObjectName + msg,
73-
id: objectName
72+
return LogChain(
73+
msg,
74+
id: objectName,
75+
logType: .failure
7476
)
7577
}
7678
}

0 commit comments

Comments
 (0)