165 lines
No EOL
9.7 KiB
HTML
165 lines
No EOL
9.7 KiB
HTML
<!DOCTYPE html>
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="tool" content="leanote-desktop-app">
|
||
<title>日志备份归档操作步骤</title>
|
||
<style>
|
||
|
||
*{font-family:"lucida grande","lucida sans unicode",lucida,helvetica,"Hiragino Sans GB","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;}
|
||
|
||
body {
|
||
margin: 0;
|
||
}
|
||
|
||
/*公用文字样式*/
|
||
h1{font-size:30px}h2{font-size:24px}h3{font-size:18px}h4{font-size:14px}
|
||
.note-container{
|
||
width:850px;
|
||
margin:auto;
|
||
padding: 10px 20px;
|
||
box-shadow: 1px 1px 10px #eee;
|
||
}
|
||
#title {
|
||
margin: 0;
|
||
}
|
||
table {
|
||
margin-bottom: 16px;
|
||
border-collapse: collapse;
|
||
}
|
||
table th, table td {
|
||
padding: 6px 13px;
|
||
border: 1px solid #ddd;
|
||
}
|
||
table th {
|
||
font-weight: bold;
|
||
}
|
||
|
||
table tr {
|
||
background-color: none;
|
||
border-top: 1px solid #ccc;
|
||
}
|
||
table tr:nth-child(2n) {
|
||
background-color: rgb(247, 247, 249);
|
||
}
|
||
.mce-item-table, .mce-item-table td, .mce-item-table th, .mce-item-table caption {
|
||
border: 1px solid #ddd;
|
||
border-collapse: collapse;
|
||
padding: 6px 13px;
|
||
}
|
||
blockquote {
|
||
border-left-width:10px;
|
||
background-color:rgba(128,128,128,0.05);
|
||
border-top-right-radius:5px;
|
||
border-bottom-right-radius:5px;
|
||
padding:15px 20px;
|
||
border-left:5px solid rgba(128,128,128,0.075);
|
||
}
|
||
blockquote p {
|
||
margin-bottom:1.1em;
|
||
font-size:1em;
|
||
line-height:1.45
|
||
}
|
||
blockquote ul:last-child,blockquote ol:last-child {
|
||
margin-bottom:0
|
||
}
|
||
pre {
|
||
padding: 18px;
|
||
background-color: #f7f7f9;
|
||
border: 1px solid #e1e1e8;
|
||
border-radius: 3px;
|
||
display: block;
|
||
}
|
||
code {
|
||
padding: 2px 4px;
|
||
font-size: 90%;
|
||
color: #c7254e;
|
||
white-space: nowrap;
|
||
background-color: #f9f2f4;
|
||
border-radius: 4px;
|
||
}
|
||
.footnote {
|
||
vertical-align: top;
|
||
position: relative;
|
||
top: -0.5em;
|
||
font-size: .8em;
|
||
}
|
||
|
||
hr {
|
||
margin:2em 0
|
||
}
|
||
img {
|
||
max-width:100%
|
||
}
|
||
pre {
|
||
word-break:break-word
|
||
}
|
||
p,pre,pre.prettyprint,blockquote {
|
||
margin:0 0 1.1em
|
||
}
|
||
hr {
|
||
margin:2em 0
|
||
}
|
||
img {
|
||
max-width:100%
|
||
}
|
||
.sequence-diagram,.flow-chart {
|
||
text-align:center;
|
||
margin-bottom:1.1em
|
||
}
|
||
.sequence-diagram text,.flow-chart text {
|
||
font-size:15px !important;
|
||
font-family:"Source Sans Pro",sans-serif !important
|
||
}
|
||
.sequence-diagram [fill="#ffffff"],.flow-chart [fill="#ffffff"] {
|
||
fill:#f6f6f6
|
||
}
|
||
.sequence-diagram [stroke="#000000"],.flow-chart [stroke="#000000"] {
|
||
stroke:#3f3f3f
|
||
}
|
||
.sequence-diagram text[stroke="#000000"],.flow-chart text[stroke="#000000"] {
|
||
stroke:none
|
||
}
|
||
.sequence-diagram [fill="#000"],.flow-chart [fill="#000"],.sequence-diagram [fill="#000000"],.flow-chart [fill="#000000"],.sequence-diagram [fill="black"],.flow-chart [fill="black"] {
|
||
fill:#3f3f3f
|
||
}
|
||
ul,ol {
|
||
margin-bottom:1.1em
|
||
}
|
||
ul ul,ol ul,ul ol,ol ol {
|
||
margin-bottom:1.1em
|
||
}
|
||
kbd {
|
||
padding:.1em .6em;
|
||
border:1px solid rgba(63,63,63,0.25);
|
||
-webkit-box-shadow:0 1px 0 rgba(63,63,63,0.25);
|
||
box-shadow:0 1px 0 rgba(63,63,63,0.25);
|
||
font-size:.7em;
|
||
font-family:sans-serif;
|
||
background-color:#fff;
|
||
color:#333;
|
||
border-radius:3px;
|
||
display:inline-block;
|
||
margin:0 .1em;
|
||
white-space:nowrap
|
||
}
|
||
.toc ul {
|
||
list-style-type:none;
|
||
margin-bottom:15px
|
||
}
|
||
</style>
|
||
<!-- 该css供自定义样式 -->
|
||
<link href="../leanote-html.css" rel="stylesheet">
|
||
</head>
|
||
|
||
<body>
|
||
|
||
<div class="note-container">
|
||
<h1 class="title" id="leanote-title">日志备份归档操作步骤</h1>
|
||
<div class="content-html" id="leanote-content"><p>注:红色为注释说明的内容,绿色为示例内容,请以项目实际情况修改操作</p><p><span lang="EN-US"> </span></p><ol><li><strong>在<span lang="EN-US">/opt/appl/assist/loggz</span></strong><strong>下创建脚本,文件名<span lang="EN-US">logarch_project.sh</span></strong><strong>,脚本内容如下:</strong></li></ol><p><span lang="EN-US">#!/bin/bash</span></p><p><span lang="EN-US">##</span>今天</p><p><span lang="EN-US">#TAR_DATE=`date +%Y-%m-%d`</span></p><p><span lang="EN-US">##</span>昨天,一般备份选择昨天,因为备份发生在凌晨昨天的日志一定是完整的</p><p><span lang="EN-US">TAR_DATE=`date -d last-day +%Y-%m-%d`</span></p><p><span lang="EN-US">##</span>当前的时间,命名文件必须使用</p><p><span lang="EN-US">TAR_TIME=`date +%H%M%S`</span></p><p><span lang="EN-US">##</span>定义删除文件的时间,留<span lang="EN-US">1-2</span>天的日志文件方便研发或测试用来排错。</p><p><span lang="EN-US">##</span>两天前</p><p><span lang="EN-US">DEL_DATE=`date -d '2 days ago' +%Y-%m-%d`</span></p><p><span lang="EN-US">##</span>定义日志文件的位置,<span lang="EN-US">server</span>为中间件服务日志,<span lang="EN-US">bizlog</span>为业务日志</p><p><span lang="EN-US">SERVER_PATH=/opt/appl/olio/tomcat/log/</span></p><p><span lang="EN-US">BIZLOG_PATH=/opt/appl/olio/tomcat/logs/olio/</span></p><p><span lang="EN-US">##</span>脚本执行输出日志</p><p><span lang="EN-US">LOGFILE_PATH=/var/log/logarch.log</span></p><p><span lang="EN-US">##</span>日志输出方法</p><p><span lang="EN-US">loginfo()</span></p><p><span lang="EN-US">{</span></p><p><span lang="EN-US"> echo "$(date "+%Y-%m-%d_%H:%M:%S") [EXCU RECORD] $1" >> $LOGFILE_PATH</span></p><p><span lang="EN-US">}</span></p><p><span lang="EN-US">###</span>开始操作日志(拿<span lang="EN-US">olio</span>项目的<span lang="EN-US">app</span>日志举例,以下<span lang="EN-US">access</span>、<span lang="EN-US">interface</span>等与此相同)</p><p><span lang="EN-US">loginfo "App logfiles will be compressed."</span></p><p><span lang="EN-US">cd $BIZLOG_PATH/app</span></p><p><span lang="EN-US">tar zcvf olio.log-"$TAR_DATE"-"$TAR_TIME".tar.gz olio.log."$TAR_DATE"-* --remove-files >> $LOGFILE_PATH 2>&1</span></p><p><span lang="EN-US">tar zcvf fspf-statistics.log-"$TAR_DATE"-"$TAR_TIME".tar.gz fspf-statistics.log."$TAR_DATE"-* --remove-files >> $LOGFILE_PATH 2>&1</span></p><p><span lang="EN-US">loginfo "App logfiles Compression end."</span></p><p><span lang="EN-US">loginfo "App logfiles,Compressed will be deleted."</span></p><p><span lang="EN-US"> </span></p><p><span lang="EN-US">##</span>如果<span lang="EN-US">gz</span>文件要归档在本机就不需要开启以下行,</p><p><span lang="EN-US">#rm -rf olio.log-"$DEL_DATE"-* >> $LOGFILE_PATH 2>&1</span></p><p><span lang="EN-US">#rm -rf fspf-statistics.log-"$DEL_DATE"-* >> $LOGFILE_PATH 2>&1</span></p><p><span lang="EN-US">loginfo "Access logfiles was deleted."</span></p><p><strong><span lang="EN-US"> </span></strong></p><ol start="2"><li><strong>添加定时任务</strong></li></ol><p><span lang="EN-US">00 02 * * * /opt/appl/assist/loggz/logarch_project.sh > /dev/null 2>&1</span></p><p><span lang="EN-US"> </span></p><p><span lang="EN-US"> </span></p><p><span lang="EN-US"> </span></p><ol start="3"><li><strong>同步归档文件到日志备份服务器。</strong></li></ol><p>在日志服务器创建脚本如下内容<span lang="EN-US">rsync-172.16.4.71-project.sh</span>:</p><p><span lang="EN-US">#!/bin/sh</span></p><p><span lang="EN-US">##</span>归档文件位置变量定义</p><p><span lang="EN-US">APP_IP=172.16.4.71</span></p><p><span lang="EN-US">RYSNC_BASE=/logarch/CentLog</span></p><p><span lang="EN-US">RSYNC_HOME=$RYSNC_BASE/$APP_IP</span></p><p><span lang="EN-US"> </span></p><p><span lang="EN-US">##</span>脚本日志位置定义</p><p><span lang="EN-US">LOG_BASE=/backup/rsync/log</span></p><p><span lang="EN-US">LOG_HOME=$LOG_BASE/$APP_IP</span></p><p><span lang="EN-US">LOG_FILE=$LOG_HOME/rsync_$(date +%Y-%m-%d)</span></p><p><span lang="EN-US"> </span></p><p><span lang="EN-US">if [ ! -d "$RSYNC_HOME" ]; then</span></p><p><span lang="EN-US"> mkdir $RSYNC_HOME</span></p><p><span lang="EN-US">fi</span></p><p><span lang="EN-US"> </span></p><p><span lang="EN-US">if [ ! -d "$LOG_HOME" ]; then</span></p><p><span lang="EN-US"> mkdir $LOG_HOME</span></p><p><span lang="EN-US">fi</span></p><p><span lang="EN-US">##</span>日志输出</p><p><span lang="EN-US">loginfo()</span></p><p><span lang="EN-US">{</span></p><p><span lang="EN-US"> echo "$(date "+%Y-%m-%d_%H:%M") [ANIHC SAYS] $1" >>$LOG_FILE</span></p><p><span lang="EN-US">}</span></p><p><span lang="EN-US">##</span>同步服务日志归档</p><p><span lang="EN-US">##For dcqs jboss log</span></p><p><span lang="EN-US">loginfo "==========Synchronizing DCQS JBoss log=========="</span></p><p><span lang="EN-US">/usr/bin/rsync -arP--include "*.gz" --include="*/" --exclude "*" --password-file=/etc/rsyncd.pwd_dcqs rsync@${APP_IP}::jbslog_dcqs ${RSYNC_HOME}/dcqs/jbslog >>$LOG_FILE</span></p><p><span lang="EN-US">loginfo "==========Synchronization done.=========="</span></p><p><span lang="EN-US">loginfo ""</span></p><p><span lang="EN-US">##</span>同步业务归档文件</p><p><span lang="EN-US">##for dcqs biz log</span></p><p><span lang="EN-US">loginfo "==========Synchronizing DCQS Business log=========="</span></p><p><span lang="EN-US">/usr/bin/rsync -arP --include "*.gz" --include="*/" --exclude "*" --password-file=/etc/rsyncd.pwd.dcqs rsync@${APP_IP}::bizlog_dcqs ${RSYNC_HOME}/dcqs/bizlog/dataCenter >> $LOG_FILE</span></p><p><span lang="EN-US">loginfo "==========Synchronization done.=========="</span></p><p><span lang="EN-US">loginfo ""</span></p><p><span lang="EN-US"> </span></p><p><span lang="EN-US">#</span>把此脚本写入到日志备份服务器的定时任务中</p><p><span lang="EN-US">00 03 * * * /xxxx/rsync-172.16.4.71-project.sh > /dev/null 2>&1</span></p><p><span lang="EN-US"> </span></p><p><strong>注意</strong>:<span lang="EN-US">rsync </span>命令中的源地址也就是文件提供方<span lang="EN-US">rsyncd.conf</span>中定义的模块。</p><p><span lang="EN-US"> </span></p></div>
|
||
</div>
|
||
|
||
<!-- 该js供其它处理 -->
|
||
<script src="../leanote-html.js"></script>
|
||
</body>
|
||
</html> |