Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
梦中观雨
cat
提交
aa94f7fe
C
cat
项目概览
梦中观雨
/
cat
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
cat
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
aa94f7fe
编写于
11月 26, 2013
作者:
Y
yong.you
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add the testcase
上级
11f3a75d
变更
12
隐藏空白更改
内联
并排
Showing
12 changed file
with
698 addition
and
112 deletion
+698
-112
README.md
README.md
+1
-1
cat-consumer-advanced/src/test/java/com/dianping/cat/consumer/metric/MetricConfigManagerTest.java
...dianping/cat/consumer/metric/MetricConfigManagerTest.java
+1
-107
cat-consumer-advanced/src/test/java/com/dianping/cat/consumer/metric/ProductLineConfigManagerTest.java
...ing/cat/consumer/metric/ProductLineConfigManagerTest.java
+1
-1
cat-consumer/src/main/java/com/dianping/cat/consumer/dump/DumpAnalyzer.java
...ain/java/com/dianping/cat/consumer/dump/DumpAnalyzer.java
+12
-0
cat-consumer/src/test/java/com/dianping/cat/consumer/AllTests.java
...mer/src/test/java/com/dianping/cat/consumer/AllTests.java
+3
-0
cat-consumer/src/test/java/com/dianping/cat/consumer/RealtimeConfigConfiguration.java
...om/dianping/cat/consumer/RealtimeConfigConfiguration.java
+55
-0
cat-consumer/src/test/java/com/dianping/cat/consumer/dump/DumpAnalyzerTest.java
...java/com/dianping/cat/consumer/dump/DumpAnalyzerTest.java
+117
-0
cat-consumer/src/test/java/com/dianping/cat/consumer/problem/AggregationConfigManagerTest.java
...ng/cat/consumer/problem/AggregationConfigManagerTest.java
+3
-2
cat-consumer/src/test/java/com/dianping/cat/consumer/problem/ProblemAnalyzerTest.java
...om/dianping/cat/consumer/problem/ProblemAnalyzerTest.java
+11
-0
cat-consumer/src/test/java/com/dianping/cat/consumer/state/StateAnalyzerTest.java
...va/com/dianping/cat/consumer/state/StateAnalyzerTest.java
+0
-1
cat-consumer/src/test/resources/com/dianping/cat/consumer/problem/problem_analyzer.xml
...es/com/dianping/cat/consumer/problem/problem_analyzer.xml
+384
-0
cat-core/src/test/java/com/dianping/cat/MockLog.java
cat-core/src/test/java/com/dianping/cat/MockLog.java
+110
-0
未找到文件。
README.md
浏览文件 @
aa94f7fe
...
...
@@ -22,7 +22,7 @@ CAT监控系统将每次URL、Service的请求内部执行情况都封装为一
![
Alt text
](
https://raw.github.com/dianping/cat/master/cat-home/src/main/webapp/images/logviewAll02.png
)
分布式消息树【一台机器
CALL
另外一台机器】
分布式消息树【一台机器
调用
另外一台机器】
---------------------
![
Alt text
](
https://raw.github.com/dianping/cat/master/cat-home/src/main/webapp/images/logviewAll03.png
)
...
...
cat-consumer-advanced/src/test/java/com/dianping/cat/consumer/metric/MetricConfigManagerTest.java
浏览文件 @
aa94f7fe
...
...
@@ -6,12 +6,12 @@ import java.util.List;
import
junit.framework.Assert
;
import
org.codehaus.plexus.logging.Logger
;
import
org.junit.Test
;
import
org.unidal.dal.jdbc.DalException
;
import
org.unidal.dal.jdbc.Readset
;
import
org.unidal.dal.jdbc.Updateset
;
import
com.dianping.cat.MockLog
;
import
com.dianping.cat.advanced.metric.config.entity.MetricConfig
;
import
com.dianping.cat.advanced.metric.config.entity.MetricItemConfig
;
import
com.dianping.cat.consumer.metric.MetricAnalyzer.ConfigItem
;
...
...
@@ -140,110 +140,4 @@ public class MetricConfigManagerTest {
}
}
public
static
class
MockLog
implements
Logger
{
@Override
public
void
debug
(
String
message
)
{
}
@Override
public
void
debug
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isDebugEnabled
()
{
return
false
;
}
@Override
public
void
info
(
String
message
)
{
}
@Override
public
void
info
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isInfoEnabled
()
{
return
false
;
}
@Override
public
void
warn
(
String
message
)
{
}
@Override
public
void
warn
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isWarnEnabled
()
{
return
false
;
}
@Override
public
void
error
(
String
message
)
{
}
@Override
public
void
error
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isErrorEnabled
()
{
return
false
;
}
@Override
public
void
fatalError
(
String
message
)
{
}
@Override
public
void
fatalError
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isFatalErrorEnabled
()
{
return
false
;
}
@Override
public
Logger
getChildLogger
(
String
name
)
{
return
null
;
}
@Override
public
int
getThreshold
()
{
return
0
;
}
@Override
public
void
setThreshold
(
int
threshold
)
{
}
@Override
public
String
getName
()
{
return
null
;
}
}
}
cat-consumer-advanced/src/test/java/com/dianping/cat/consumer/metric/ProductLineConfigManagerTest.java
浏览文件 @
aa94f7fe
...
...
@@ -12,9 +12,9 @@ import org.unidal.dal.jdbc.DalNotFoundException;
import
org.unidal.dal.jdbc.Readset
;
import
org.unidal.dal.jdbc.Updateset
;
import
com.dianping.cat.MockLog
;
import
com.dianping.cat.consumer.company.model.entity.Company
;
import
com.dianping.cat.consumer.company.model.entity.ProductLine
;
import
com.dianping.cat.consumer.metric.MetricConfigManagerTest.MockLog
;
import
com.dianping.cat.core.config.Config
;
import
com.dianping.cat.core.config.ConfigDao
;
...
...
cat-consumer/src/main/java/com/dianping/cat/consumer/dump/DumpAnalyzer.java
浏览文件 @
aa94f7fe
...
...
@@ -120,4 +120,16 @@ public class DumpAnalyzer extends AbstractMessageAnalyzer<Object> implements Log
}
}
public
Map
<
String
,
Integer
>
getOldVersionDomains
()
{
return
m_oldVersionDomains
;
}
public
void
setServerStateManager
(
ServerStatisticManager
serverStateManager
)
{
m_serverStateManager
=
serverStateManager
;
}
public
void
setBucketManager
(
LocalMessageBucketManager
bucketManager
)
{
m_bucketManager
=
bucketManager
;
}
}
cat-consumer/src/test/java/com/dianping/cat/consumer/AllTests.java
浏览文件 @
aa94f7fe
...
...
@@ -9,6 +9,7 @@ import com.dianping.cat.consumer.core.GsonTest;
import
com.dianping.cat.consumer.core.NumberFormatTest
;
import
com.dianping.cat.consumer.core.aggregation.CompositeFormatTest
;
import
com.dianping.cat.consumer.core.aggregation.DefaultFormatTest
;
import
com.dianping.cat.consumer.dump.DumpAnalyzer
;
import
com.dianping.cat.consumer.event.EventAnalyzerTest
;
import
com.dianping.cat.consumer.event.EventReportMergerTest
;
import
com.dianping.cat.consumer.heartbeat.HeartbeatAnalyzerTest
;
...
...
@@ -90,6 +91,8 @@ CompositeFormatTest.class,
DefaultFormatTest
.
class
,
DumpAnalyzer
.
class
,
TransactionReportTypeAggergatorTest
.
class
})
public
class
AllTests
{
...
...
cat-consumer/src/test/java/com/dianping/cat/consumer/RealtimeConfigConfiguration.java
0 → 100644
浏览文件 @
aa94f7fe
package
com.dianping.cat.consumer
;
import
java.util.ArrayList
;
import
java.util.List
;
import
org.unidal.lookup.configuration.AbstractResourceConfigurator
;
import
org.unidal.lookup.configuration.Component
;
import
com.dianping.cat.analysis.MessageAnalyzer
;
import
com.dianping.cat.analysis.MessageAnalyzerManager
;
import
com.dianping.cat.consumer.event.EventAnalyzer
;
import
com.dianping.cat.consumer.top.TopAnalyzer
;
import
com.dianping.cat.consumer.transaction.Configurator
;
import
com.dianping.cat.consumer.transaction.TransactionAnalyzer
;
import
com.dianping.cat.consumer.transaction.TransactionAnalyzerTest
;
import
com.dianping.cat.consumer.transaction.Configurator.ExtendedTransactionDelegate
;
import
com.dianping.cat.consumer.transaction.Configurator.MockTransactionReportManager
;
import
com.dianping.cat.service.ReportDelegate
;
import
com.dianping.cat.service.ReportManager
;
public
class
RealtimeConfigConfiguration
extends
AbstractResourceConfigurator
{
public
static
void
main
(
String
[]
args
)
{
generatePlexusComponentsXmlFile
(
new
Configurator
());
}
protected
Class
<?>
getTestClass
()
{
return
TransactionAnalyzerTest
.
class
;
}
@Override
public
List
<
Component
>
defineComponents
()
{
List
<
Component
>
all
=
new
ArrayList
<
Component
>();
return
all
;
}
public
static
class
MockMessageAnalyzerManager
implements
MessageAnalyzerManager
{
@Override
public
List
<
String
>
getAnalyzerNames
()
{
List
<
String
>
list
=
new
ArrayList
<
String
>();
list
.
add
(
TransactionAnalyzer
.
ID
);
list
.
add
(
EventAnalyzer
.
ID
);
list
.
add
(
TopAnalyzer
.
ID
);
return
list
;
}
@Override
public
MessageAnalyzer
getAnalyzer
(
String
name
,
long
startTime
)
{
return
null
;
}
}
}
cat-consumer/src/test/java/com/dianping/cat/consumer/dump/DumpAnalyzerTest.java
0 → 100644
浏览文件 @
aa94f7fe
package
com.dianping.cat.consumer.dump
;
import
java.io.IOException
;
import
junit.framework.Assert
;
import
org.junit.Test
;
import
com.dianping.cat.MockLog
;
import
com.dianping.cat.message.Message
;
import
com.dianping.cat.message.internal.DefaultTransaction
;
import
com.dianping.cat.message.internal.MessageId
;
import
com.dianping.cat.message.spi.MessageTree
;
import
com.dianping.cat.message.spi.internal.DefaultMessageTree
;
import
com.dianping.cat.statistic.ServerStatisticManager
;
import
com.dianping.cat.storage.dump.LocalMessageBucketManager
;
public
class
DumpAnalyzerTest
{
@Test
public
void
test
()
throws
Exception
{
DumpAnalyzer
analyzer
=
new
DumpAnalyzer
();
int
size
=
1000
;
MockLocalMessageBucketManager
bucketManager
=
new
MockLocalMessageBucketManager
();
analyzer
.
setServerStateManager
(
new
ServerStatisticManager
());
analyzer
.
setBucketManager
(
bucketManager
);
analyzer
.
enableLogging
(
new
MockLog
());
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
analyzer
.
process
(
generateMessageTree
(
i
));
}
Assert
.
assertEquals
(
size
,
bucketManager
.
m_insert
);
analyzer
.
doCheckpoint
(
true
);
Thread
.
sleep
(
1000
);
Assert
.
assertEquals
(
true
,
bucketManager
.
m_archive
);
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
analyzer
.
process
(
generateOldMessageTree
());
}
Assert
.
assertEquals
(
size
,
bucketManager
.
m_insert
);
Assert
.
assertEquals
(
size
,
analyzer
.
getOldVersionDomains
().
get
(
"Cat"
).
intValue
());
}
protected
MessageTree
generateOldMessageTree
()
{
DefaultMessageTree
tree
=
(
DefaultMessageTree
)
generateMessageTree
(
10
);
tree
.
setMessageId
(
"Cat-0a010680-1385467200000-10"
);
return
tree
;
}
protected
MessageTree
generateMessageTree
(
int
i
)
{
MessageTree
tree
=
new
DefaultMessageTree
();
tree
.
setDomain
(
"Cat"
);
tree
.
setHostName
(
"group001"
);
tree
.
setIpAddress
(
"192.168.1.1"
);
DefaultTransaction
t
=
new
DefaultTransaction
(
"A"
,
"n"
+
i
%
2
,
null
);
DefaultTransaction
t2
=
new
DefaultTransaction
(
"A-1"
,
"n"
+
i
%
3
,
null
);
if
(
i
%
2
==
0
)
{
t2
.
setStatus
(
"ERROR"
);
}
else
{
t2
.
setStatus
(
Message
.
SUCCESS
);
}
t2
.
complete
();
t2
.
setDurationInMillis
(
i
);
t
.
addChild
(
t2
);
if
(
i
%
2
==
0
)
{
t
.
setStatus
(
"ERROR"
);
}
else
{
t
.
setStatus
(
Message
.
SUCCESS
);
}
t
.
complete
();
t
.
setDurationInMillis
(
i
*
2
);
long
timestamp
=
System
.
currentTimeMillis
()
-
System
.
currentTimeMillis
()
%
(
3600
*
1000
);
t
.
setTimestamp
(
timestamp
+
1000
);
t2
.
setTimestamp
(
timestamp
+
2000
);
tree
.
setMessage
(
t
);
tree
.
setMessageId
(
"Cat-0a010680-384852-"
+
i
);
return
tree
;
}
public
static
class
MockLocalMessageBucketManager
extends
LocalMessageBucketManager
{
protected
boolean
m_archive
=
false
;
protected
int
m_insert
=
0
;
@Override
public
MessageTree
loadMessage
(
String
messageId
)
throws
IOException
{
return
new
DefaultMessageTree
();
}
@Override
public
void
storeMessage
(
MessageTree
tree
,
MessageId
id
)
throws
IOException
{
m_insert
++;
}
@Override
public
void
archive
(
long
startTime
)
{
m_archive
=
true
;
}
}
}
cat-consumer/src/test/java/com/dianping/cat/consumer/problem/AggregationConfigManagerTest.java
浏览文件 @
aa94f7fe
...
...
@@ -6,6 +6,7 @@ import junit.framework.Assert;
import
org.junit.Test
;
import
org.unidal.dal.jdbc.DalException
;
import
org.unidal.dal.jdbc.DalNotFoundException
;
import
org.unidal.dal.jdbc.Readset
;
import
org.unidal.dal.jdbc.Updateset
;
...
...
@@ -80,8 +81,8 @@ public class AggregationConfigManagerTest {
public
static
class
MockConfigDao2
extends
MockConfigDao1
{
@Override
public
Config
findByName
(
String
name
,
Readset
<
Config
>
readset
)
throws
DalException
{
throw
new
DalException
(
"this is test exception, please ignore it!"
);
public
Config
findByName
(
String
name
,
Readset
<
Config
>
readset
)
throws
Dal
NotFound
Exception
{
throw
new
Dal
NotFound
Exception
(
"this is test exception, please ignore it!"
);
}
}
...
...
cat-consumer/src/test/java/com/dianping/cat/consumer/problem/ProblemAnalyzerTest.java
浏览文件 @
aa94f7fe
...
...
@@ -13,6 +13,10 @@ import org.unidal.lookup.ComponentTestCase;
import
com.dianping.cat.Constants
;
import
com.dianping.cat.analysis.MessageAnalyzer
;
import
com.dianping.cat.consumer.problem.model.entity.ProblemReport
;
import
com.dianping.cat.message.Event
;
import
com.dianping.cat.message.Heartbeat
;
import
com.dianping.cat.message.internal.DefaultEvent
;
import
com.dianping.cat.message.internal.DefaultHeartbeat
;
import
com.dianping.cat.message.internal.DefaultTransaction
;
import
com.dianping.cat.message.spi.MessageTree
;
import
com.dianping.cat.message.spi.internal.DefaultMessageTree
;
...
...
@@ -93,6 +97,13 @@ public class ProblemAnalyzerTest extends ComponentTestCase {
break
;
}
Event
error
=
new
DefaultEvent
(
"Error"
,
"Error"
,
null
);
Event
exception
=
new
DefaultEvent
(
"Exception"
,
"Exception"
,
null
);
Heartbeat
heartbeat
=
new
DefaultHeartbeat
(
"heartbeat"
,
"heartbeat"
);
t
.
addChild
(
error
);
t
.
addChild
(
exception
);
t
.
addChild
(
heartbeat
);
tree
.
setMessage
(
t
);
return
tree
;
...
...
cat-consumer/src/test/java/com/dianping/cat/consumer/state/StateAnalyzerTest.java
浏览文件 @
aa94f7fe
...
...
@@ -36,7 +36,6 @@ public class StateAnalyzerTest extends ComponentTestCase {
@Test
public
void
testProcess
()
throws
Exception
{
StateReport
report
=
m_analyzer
.
getReport
(
m_domain
);
String
expected
=
Files
.
forIO
().
readFrom
(
getClass
().
getResourceAsStream
(
"state_analyzer.xml"
),
"utf-8"
);
...
...
cat-consumer/src/test/resources/com/dianping/cat/consumer/problem/problem_analyzer.xml
浏览文件 @
aa94f7fe
...
...
@@ -41,6 +41,390 @@
</segment>
</thread>
</entry>
<entry
type=
"error"
status=
"Error"
>
<duration
value=
"0"
count=
"100"
>
<message>
1
</message>
<message>
2
</message>
<message>
3
</message>
<message>
4
</message>
<message>
5
</message>
<message>
6
</message>
<message>
7
</message>
<message>
8
</message>
<message>
9
</message>
<message>
10
</message>
<message>
11
</message>
<message>
12
</message>
<message>
13
</message>
<message>
14
</message>
<message>
15
</message>
<message>
16
</message>
<message>
17
</message>
<message>
18
</message>
<message>
19
</message>
<message>
20
</message>
<message>
21
</message>
<message>
22
</message>
<message>
23
</message>
<message>
24
</message>
<message>
25
</message>
<message>
26
</message>
<message>
27
</message>
<message>
28
</message>
<message>
29
</message>
<message>
30
</message>
<message>
31
</message>
<message>
32
</message>
<message>
33
</message>
<message>
34
</message>
<message>
35
</message>
<message>
36
</message>
<message>
37
</message>
<message>
38
</message>
<message>
39
</message>
<message>
40
</message>
<message>
41
</message>
<message>
42
</message>
<message>
43
</message>
<message>
44
</message>
<message>
45
</message>
<message>
46
</message>
<message>
47
</message>
<message>
48
</message>
<message>
49
</message>
<message>
50
</message>
<message>
51
</message>
<message>
52
</message>
<message>
53
</message>
<message>
54
</message>
<message>
55
</message>
<message>
56
</message>
<message>
57
</message>
<message>
58
</message>
<message>
59
</message>
<message>
60
</message>
</duration>
<thread
group-name=
"Cat"
name=
"Cat-ProblemAnalyzer-Test"
id=
"Cat"
>
<segment
id=
"0"
count=
"100"
>
<message>
1
</message>
<message>
2
</message>
<message>
3
</message>
<message>
4
</message>
<message>
5
</message>
<message>
6
</message>
<message>
7
</message>
<message>
8
</message>
<message>
9
</message>
<message>
10
</message>
<message>
11
</message>
<message>
12
</message>
<message>
13
</message>
<message>
14
</message>
<message>
15
</message>
<message>
16
</message>
<message>
17
</message>
<message>
18
</message>
<message>
19
</message>
<message>
20
</message>
<message>
21
</message>
<message>
22
</message>
<message>
23
</message>
<message>
24
</message>
<message>
25
</message>
<message>
26
</message>
<message>
27
</message>
<message>
28
</message>
<message>
29
</message>
<message>
30
</message>
<message>
31
</message>
<message>
32
</message>
<message>
33
</message>
<message>
34
</message>
<message>
35
</message>
<message>
36
</message>
<message>
37
</message>
<message>
38
</message>
<message>
39
</message>
<message>
40
</message>
<message>
41
</message>
<message>
42
</message>
<message>
43
</message>
<message>
44
</message>
<message>
45
</message>
<message>
46
</message>
<message>
47
</message>
<message>
48
</message>
<message>
49
</message>
<message>
50
</message>
<message>
51
</message>
<message>
52
</message>
<message>
53
</message>
<message>
54
</message>
<message>
55
</message>
<message>
56
</message>
<message>
57
</message>
<message>
58
</message>
<message>
59
</message>
<message>
60
</message>
</segment>
</thread>
</entry>
<entry
type=
"error"
status=
"Exception"
>
<duration
value=
"0"
count=
"100"
>
<message>
1
</message>
<message>
2
</message>
<message>
3
</message>
<message>
4
</message>
<message>
5
</message>
<message>
6
</message>
<message>
7
</message>
<message>
8
</message>
<message>
9
</message>
<message>
10
</message>
<message>
11
</message>
<message>
12
</message>
<message>
13
</message>
<message>
14
</message>
<message>
15
</message>
<message>
16
</message>
<message>
17
</message>
<message>
18
</message>
<message>
19
</message>
<message>
20
</message>
<message>
21
</message>
<message>
22
</message>
<message>
23
</message>
<message>
24
</message>
<message>
25
</message>
<message>
26
</message>
<message>
27
</message>
<message>
28
</message>
<message>
29
</message>
<message>
30
</message>
<message>
31
</message>
<message>
32
</message>
<message>
33
</message>
<message>
34
</message>
<message>
35
</message>
<message>
36
</message>
<message>
37
</message>
<message>
38
</message>
<message>
39
</message>
<message>
40
</message>
<message>
41
</message>
<message>
42
</message>
<message>
43
</message>
<message>
44
</message>
<message>
45
</message>
<message>
46
</message>
<message>
47
</message>
<message>
48
</message>
<message>
49
</message>
<message>
50
</message>
<message>
51
</message>
<message>
52
</message>
<message>
53
</message>
<message>
54
</message>
<message>
55
</message>
<message>
56
</message>
<message>
57
</message>
<message>
58
</message>
<message>
59
</message>
<message>
60
</message>
</duration>
<thread
group-name=
"Cat"
name=
"Cat-ProblemAnalyzer-Test"
id=
"Cat"
>
<segment
id=
"0"
count=
"100"
>
<message>
1
</message>
<message>
2
</message>
<message>
3
</message>
<message>
4
</message>
<message>
5
</message>
<message>
6
</message>
<message>
7
</message>
<message>
8
</message>
<message>
9
</message>
<message>
10
</message>
<message>
11
</message>
<message>
12
</message>
<message>
13
</message>
<message>
14
</message>
<message>
15
</message>
<message>
16
</message>
<message>
17
</message>
<message>
18
</message>
<message>
19
</message>
<message>
20
</message>
<message>
21
</message>
<message>
22
</message>
<message>
23
</message>
<message>
24
</message>
<message>
25
</message>
<message>
26
</message>
<message>
27
</message>
<message>
28
</message>
<message>
29
</message>
<message>
30
</message>
<message>
31
</message>
<message>
32
</message>
<message>
33
</message>
<message>
34
</message>
<message>
35
</message>
<message>
36
</message>
<message>
37
</message>
<message>
38
</message>
<message>
39
</message>
<message>
40
</message>
<message>
41
</message>
<message>
42
</message>
<message>
43
</message>
<message>
44
</message>
<message>
45
</message>
<message>
46
</message>
<message>
47
</message>
<message>
48
</message>
<message>
49
</message>
<message>
50
</message>
<message>
51
</message>
<message>
52
</message>
<message>
53
</message>
<message>
54
</message>
<message>
55
</message>
<message>
56
</message>
<message>
57
</message>
<message>
58
</message>
<message>
59
</message>
<message>
60
</message>
</segment>
</thread>
</entry>
<entry
type=
"heartbeat"
status=
"heartbeat"
>
<duration
value=
"0"
count=
"100"
>
<message>
1
</message>
<message>
2
</message>
<message>
3
</message>
<message>
4
</message>
<message>
5
</message>
<message>
6
</message>
<message>
7
</message>
<message>
8
</message>
<message>
9
</message>
<message>
10
</message>
<message>
11
</message>
<message>
12
</message>
<message>
13
</message>
<message>
14
</message>
<message>
15
</message>
<message>
16
</message>
<message>
17
</message>
<message>
18
</message>
<message>
19
</message>
<message>
20
</message>
<message>
21
</message>
<message>
22
</message>
<message>
23
</message>
<message>
24
</message>
<message>
25
</message>
<message>
26
</message>
<message>
27
</message>
<message>
28
</message>
<message>
29
</message>
<message>
30
</message>
<message>
31
</message>
<message>
32
</message>
<message>
33
</message>
<message>
34
</message>
<message>
35
</message>
<message>
36
</message>
<message>
37
</message>
<message>
38
</message>
<message>
39
</message>
<message>
40
</message>
<message>
41
</message>
<message>
42
</message>
<message>
43
</message>
<message>
44
</message>
<message>
45
</message>
<message>
46
</message>
<message>
47
</message>
<message>
48
</message>
<message>
49
</message>
<message>
50
</message>
<message>
51
</message>
<message>
52
</message>
<message>
53
</message>
<message>
54
</message>
<message>
55
</message>
<message>
56
</message>
<message>
57
</message>
<message>
58
</message>
<message>
59
</message>
<message>
60
</message>
</duration>
<thread
group-name=
"Cat"
name=
"Cat-ProblemAnalyzer-Test"
id=
"Cat"
>
<segment
id=
"0"
count=
"100"
>
<message>
1
</message>
<message>
2
</message>
<message>
3
</message>
<message>
4
</message>
<message>
5
</message>
<message>
6
</message>
<message>
7
</message>
<message>
8
</message>
<message>
9
</message>
<message>
10
</message>
<message>
11
</message>
<message>
12
</message>
<message>
13
</message>
<message>
14
</message>
<message>
15
</message>
<message>
16
</message>
<message>
17
</message>
<message>
18
</message>
<message>
19
</message>
<message>
20
</message>
<message>
21
</message>
<message>
22
</message>
<message>
23
</message>
<message>
24
</message>
<message>
25
</message>
<message>
26
</message>
<message>
27
</message>
<message>
28
</message>
<message>
29
</message>
<message>
30
</message>
<message>
31
</message>
<message>
32
</message>
<message>
33
</message>
<message>
34
</message>
<message>
35
</message>
<message>
36
</message>
<message>
37
</message>
<message>
38
</message>
<message>
39
</message>
<message>
40
</message>
<message>
41
</message>
<message>
42
</message>
<message>
43
</message>
<message>
44
</message>
<message>
45
</message>
<message>
46
</message>
<message>
47
</message>
<message>
48
</message>
<message>
49
</message>
<message>
50
</message>
<message>
51
</message>
<message>
52
</message>
<message>
53
</message>
<message>
54
</message>
<message>
55
</message>
<message>
56
</message>
<message>
57
</message>
<message>
58
</message>
<message>
59
</message>
<message>
60
</message>
</segment>
</thread>
</entry>
<entry
type=
"failure"
status=
"Cache.:n0"
>
<duration
value=
"0"
count=
"8"
>
<message>
2
</message>
...
...
cat-core/src/test/java/com/dianping/cat/MockLog.java
0 → 100644
浏览文件 @
aa94f7fe
package
com.dianping.cat
;
import
org.codehaus.plexus.logging.Logger
;
public
class
MockLog
implements
Logger
{
@Override
public
void
debug
(
String
message
)
{
}
@Override
public
void
debug
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isDebugEnabled
()
{
return
false
;
}
@Override
public
void
info
(
String
message
)
{
}
@Override
public
void
info
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isInfoEnabled
()
{
return
false
;
}
@Override
public
void
warn
(
String
message
)
{
}
@Override
public
void
warn
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isWarnEnabled
()
{
return
false
;
}
@Override
public
void
error
(
String
message
)
{
}
@Override
public
void
error
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isErrorEnabled
()
{
return
false
;
}
@Override
public
void
fatalError
(
String
message
)
{
}
@Override
public
void
fatalError
(
String
message
,
Throwable
throwable
)
{
}
@Override
public
boolean
isFatalErrorEnabled
()
{
return
false
;
}
@Override
public
Logger
getChildLogger
(
String
name
)
{
return
null
;
}
@Override
public
int
getThreshold
()
{
return
0
;
}
@Override
public
void
setThreshold
(
int
threshold
)
{
}
@Override
public
String
getName
()
{
return
null
;
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录