Skip to content

Commit e815e74

Browse files
mgsky1qmwu2000
authored andcommitted
fix: 4.0-RC1问题修复:logView解析+进入Transaction等页面白屏
1 parent 60693f7 commit e815e74

File tree

3 files changed

+17
-8
lines changed

3 files changed

+17
-8
lines changed

cat-core/src/main/java/com/dianping/cat/report/service/BaseRemoteModelService.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,9 +91,8 @@ public ModelResponse<T> invoke(ModelRequest request) {
9191

9292
t.addData(url.toString());
9393

94-
InputStream in = Urls.forIO().connectTimeout(1000).readTimeout(10000).openStream(url.toExternalForm());
95-
GZIPInputStream gzip = new GZIPInputStream(in);
96-
String xml = Files.forIO().readFrom(gzip, "utf-8");
94+
InputStream in = Urls.forIO().connectTimeout(1000).readTimeout(10000).withGzip().openStream(url.toExternalForm());
95+
String xml = Files.forIO().readFrom(in, "utf-8");
9796

9897
int len = xml == null ? 0 : xml.length();
9998

cat-home/src/main/java/com/dianping/cat/report/page/logview/service/LocalMessageService.java

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ private String buildNewReport(ModelRequest request, ModelPeriod period, String d
8888
MessageTree tree = null;
8989

9090
if (buf != null) {
91-
tree = CodecHandler.decode(buf);
91+
tree = CodecHandler.decode(changeBuf(buf));
9292
}
9393

9494
if (tree == null) {
@@ -101,7 +101,7 @@ private String buildNewReport(ModelRequest request, ModelPeriod period, String d
101101
ByteBuf data = bucket.get(id);
102102

103103
if (data != null) {
104-
tree = CodecHandler.decode(data);
104+
tree = CodecHandler.decode(changeBuf(data));
105105
}
106106
}
107107
}
@@ -126,6 +126,17 @@ private String buildNewReport(ModelRequest request, ModelPeriod period, String d
126126
return null;
127127
}
128128

129+
private ByteBuf changeBuf(ByteBuf data) {
130+
data.markReaderIndex();
131+
int length = data.readInt();
132+
data.resetReaderIndex();
133+
ByteBuf readBytes = data.readBytes(length + 4);
134+
135+
readBytes.markReaderIndex();
136+
readBytes.readInt();
137+
return readBytes;
138+
}
139+
129140
public String buildOldReport(ModelRequest request, ModelPeriod period, String domain, ApiPayload payload)
130141
throws Exception {
131142
String messageId = payload.getMessageId();

cat-home/src/main/java/com/dianping/cat/report/page/logview/service/RemoteLogViewService.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,8 @@ public ModelResponse<String> invoke(ModelRequest request) {
5959

6060
t.addData(url.toString());
6161

62-
InputStream in = Urls.forIO().connectTimeout(1000).readTimeout(5000).openStream(url.toExternalForm());
63-
GZIPInputStream gzip = new GZIPInputStream(in);
64-
String xml = Files.forIO().readFrom(gzip, "utf-8");
62+
InputStream in = Urls.forIO().connectTimeout(1000).readTimeout(5000).withGzip().openStream(url.toExternalForm());
63+
String xml = Files.forIO().readFrom(in, "utf-8");
6564

6665
int len = xml == null ? 0 : xml.length();
6766

0 commit comments

Comments
 (0)