Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
梦中观雨
cat
提交
7f849f4c
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,发现更多精彩内容 >>
提交
7f849f4c
编写于
9月 24, 2012
作者:
F
Frankie Wu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
log adjustment
上级
dc1bf50e
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
24 addition
and
25 deletion
+24
-25
cat-core/src/main/java/com/dianping/cat/message/spi/codec/WaterfallMessageCodec.java
...dianping/cat/message/spi/codec/WaterfallMessageCodec.java
+1
-1
cat-core/src/main/java/com/dianping/cat/storage/dump/LocalMessageBucket.java
...ava/com/dianping/cat/storage/dump/LocalMessageBucket.java
+6
-1
cat-core/src/main/java/com/dianping/cat/storage/dump/LocalMessageBucketManager.java
.../dianping/cat/storage/dump/LocalMessageBucketManager.java
+17
-23
未找到文件。
cat-core/src/main/java/com/dianping/cat/message/spi/codec/WaterfallMessageCodec.java
浏览文件 @
7f849f4c
...
...
@@ -29,7 +29,7 @@ public class WaterfallMessageCodec implements MessageCodec, Initializable {
private
BufferHelper
m_bufferHelper
;
private
boolean
m_mockMode
=
tru
e
;
private
boolean
m_mockMode
=
fals
e
;
protected
int
countTransactions
(
Transaction
t
)
{
int
count
=
1
;
...
...
cat-core/src/main/java/com/dianping/cat/storage/dump/LocalMessageBucket.java
浏览文件 @
7f849f4c
...
...
@@ -10,6 +10,8 @@ import java.util.zip.GZIPOutputStream;
import
org.jboss.netty.buffer.ChannelBuffer
;
import
org.jboss.netty.buffer.ChannelBuffers
;
import
com.dianping.cat.Cat
;
import
com.dianping.cat.message.Message
;
import
com.dianping.cat.message.internal.MessageId
;
import
com.dianping.cat.message.spi.MessageCodec
;
import
com.dianping.cat.message.spi.MessageTree
;
...
...
@@ -52,8 +54,11 @@ public class LocalMessageBucket implements MessageBucket {
private
int
m_blockSize
;
public
void
archive
()
throws
IOException
{
File
outbox
=
new
File
(
m_baseDir
,
"outbox"
);
File
from
=
new
File
(
m_baseDir
,
m_dataFile
);
Cat
.
getProducer
().
logEvent
(
"Dump"
,
"Outbox.Normal"
,
Message
.
SUCCESS
,
from
.
getPath
());
File
outbox
=
new
File
(
m_baseDir
,
"outbox"
);
File
to
=
new
File
(
outbox
,
m_dataFile
);
File
fromIndex
=
new
File
(
m_baseDir
,
m_dataFile
+
".idx"
);
File
toIndex
=
new
File
(
outbox
,
m_dataFile
+
".idx"
);
...
...
cat-core/src/main/java/com/dianping/cat/storage/dump/LocalMessageBucketManager.java
浏览文件 @
7f849f4c
...
...
@@ -13,8 +13,6 @@ import java.util.concurrent.LinkedBlockingQueue;
import
java.util.concurrent.TimeUnit
;
import
java.util.concurrent.locks.LockSupport
;
import
org.codehaus.plexus.logging.LogEnabled
;
import
org.codehaus.plexus.logging.Logger
;
import
org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable
;
import
org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException
;
...
...
@@ -35,8 +33,7 @@ import com.site.helper.Threads.Task;
import
com.site.lookup.ContainerHolder
;
import
com.site.lookup.annotation.Inject
;
public
class
LocalMessageBucketManager
extends
ContainerHolder
implements
MessageBucketManager
,
Initializable
,
LogEnabled
{
public
class
LocalMessageBucketManager
extends
ContainerHolder
implements
MessageBucketManager
,
Initializable
{
public
static
final
String
ID
=
"local"
;
private
static
final
long
ONE_HOUR
=
60
*
60
*
1000L
;
...
...
@@ -53,8 +50,6 @@ public class LocalMessageBucketManager extends ContainerHolder implements Messag
private
BlockingQueue
<
MessageBlock
>
m_messageBlocks
=
new
LinkedBlockingQueue
<
MessageBlock
>(
1000
);
private
Logger
m_logger
;
public
void
archive
(
long
startTime
)
{
String
path
=
m_pathBuilder
.
getPath
(
new
Date
(
startTime
),
""
);
List
<
String
>
keys
=
new
ArrayList
<
String
>();
...
...
@@ -66,6 +61,9 @@ public class LocalMessageBucketManager extends ContainerHolder implements Messag
}
}
Transaction
t
=
Cat
.
newTransaction
(
"System"
,
"Dump"
);
t
.
setStatus
(
Message
.
SUCCESS
);
for
(
String
key
:
keys
)
{
LocalMessageBucket
bucket
=
m_buckets
.
remove
(
key
);
...
...
@@ -74,13 +72,15 @@ public class LocalMessageBucketManager extends ContainerHolder implements Messag
}
catch
(
IOException
e
)
{
// ignore
}
try
{
bucket
.
archive
();
m_logger
.
info
(
"archive the bucket "
+
key
);
}
catch
(
IOException
e
)
{
m_logger
.
error
(
"Error when archive the buck "
+
key
,
e
);
}
catch
(
Exception
e
)
{
Cat
.
getProducer
().
logError
(
e
);
}
}
t
.
complete
();
}
}
...
...
@@ -253,8 +253,7 @@ public class LocalMessageBucketManager extends ContainerHolder implements Messag
m_errors
++;
if
(
m_errors
==
1
||
m_errors
%
1000
==
0
)
{
Cat
.
getProducer
().
logError
(
new
RuntimeException
(
"Error when dumping for bucket: "
+
dataFile
+
"."
,
e
));
Cat
.
getProducer
().
logError
(
new
RuntimeException
(
"Error when dumping for bucket: "
+
dataFile
+
"."
,
e
));
}
}
}
...
...
@@ -273,7 +272,7 @@ public class LocalMessageBucketManager extends ContainerHolder implements Messag
if
(
path
.
indexOf
(
"draft"
)
>
-
1
||
path
.
indexOf
(
"outbox"
)
>
-
1
)
{
return
false
;
}
long
current
=
System
.
currentTimeMillis
();
long
currentHour
=
current
-
current
%
ONE_HOUR
;
long
lastHour
=
currentHour
-
ONE_HOUR
;
...
...
@@ -294,7 +293,7 @@ public class LocalMessageBucketManager extends ContainerHolder implements Messag
return
true
;
}
private
void
move
r
OldMessages
()
{
private
void
moveOldMessages
()
{
final
List
<
String
>
paths
=
new
ArrayList
<
String
>();
Scanners
.
forDir
().
scan
(
m_baseDir
,
new
FileMatcher
()
{
...
...
@@ -309,12 +308,13 @@ public class LocalMessageBucketManager extends ContainerHolder implements Messag
}
});
if
(
paths
.
size
()
>
0
)
{
Transaction
t
=
Cat
.
newTransaction
(
"System"
,
"
MoveOldMessages
"
);
Transaction
t
=
Cat
.
newTransaction
(
"System"
,
"
Dump
"
);
t
.
setStatus
(
Message
.
SUCCESS
);
for
(
String
path
:
paths
)
{
try
{
Cat
.
getProducer
().
logEvent
(
"System"
,
"MoveOldMessages"
,
Message
.
SUCCESS
,
path
);
Cat
.
getProducer
().
logEvent
(
"Dump"
,
"Outbox.Abnormal"
,
Message
.
SUCCESS
,
path
);
File
outbox
=
new
File
(
m_baseDir
,
"outbox"
);
File
from
=
new
File
(
m_baseDir
,
path
);
File
to
=
new
File
(
outbox
,
path
);
...
...
@@ -330,20 +330,19 @@ public class LocalMessageBucketManager extends ContainerHolder implements Messag
}
catch
(
Exception
e
)
{
t
.
setStatus
(
Message
.
SUCCESS
);
Cat
.
logError
(
e
);
}
finally
{
}
}
t
.
complete
();
}
}
class
OldMessageMover
implements
Task
{
@Override
public
void
run
()
{
while
(
true
)
{
try
{
move
r
OldMessages
();
moveOldMessages
();
}
catch
(
Throwable
e
)
{
Cat
.
logError
(
e
);
}
...
...
@@ -393,9 +392,4 @@ public class LocalMessageBucketManager extends ContainerHolder implements Messag
public
void
shutdown
()
{
}
}
@Override
public
void
enableLogging
(
Logger
logger
)
{
m_logger
=
logger
;
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录