mirror of
https://github.com/TeaOSLab/EdgeAdmin.git
synced 2025-12-03 18:30:24 +08:00
[日志审计]增加删除、清理和别的一些设置
This commit is contained in:
5
web/views/@default/log/@menu.html
Normal file
5
web/views/@default/log/@menu.html
Normal file
@@ -0,0 +1,5 @@
|
||||
<first-menu>
|
||||
<menu-item href="/log" code="list">查询</menu-item>
|
||||
<menu-item href="/log/clean" code="clean" v-if="logConfig.canClean">清理</menu-item>
|
||||
<menu-item href="/log/settings" code="setting">设置</menu-item>
|
||||
</first-menu>
|
||||
31
web/views/@default/log/clean.html
Normal file
31
web/views/@default/log/clean.html
Normal file
@@ -0,0 +1,31 @@
|
||||
{$layout}
|
||||
{$template "menu"}
|
||||
|
||||
<form method="post" class="ui form" data-tea-action="$" data-tea-success="success">
|
||||
<csrf-token></csrf-token>
|
||||
|
||||
<table class="ui table definition selectable">
|
||||
<!--<tr>
|
||||
<td>当前用量</td>
|
||||
<td>{{size}}</td>
|
||||
</tr>-->
|
||||
<tr>
|
||||
<td class="title" :class="{'color-border':cleanType == 'days'}">清理方式</td>
|
||||
<td>
|
||||
<radio name="type" v-model="cleanType" :v-value="'all'">全部清除</radio>
|
||||
<radio name="type" v-model="cleanType" :v-value="'days'">按天数清除</radio>
|
||||
</td>
|
||||
</tr>
|
||||
<tr v-show="cleanType == 'days'">
|
||||
<td :class="{'color-border':cleanType == 'days'}">天数</td>
|
||||
<td>
|
||||
<div class="ui input right labeled">
|
||||
<input type="text" name="days" v-model="days" style="width:5em" maxlength="3"/>
|
||||
<span class="ui label">天以外</span>
|
||||
</div>
|
||||
<p class="comment">表示清除此天数以外的日志数据。</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<submit-btn></submit-btn>
|
||||
</form>
|
||||
6
web/views/@default/log/clean.js
Normal file
6
web/views/@default/log/clean.js
Normal file
@@ -0,0 +1,6 @@
|
||||
Tea.context(function () {
|
||||
this.cleanType = "all"
|
||||
this.days = 30
|
||||
|
||||
this.success = NotifyReloadSuccess("清理完成")
|
||||
})
|
||||
8
web/views/@default/log/index.css
Normal file
8
web/views/@default/log/index.css
Normal file
@@ -0,0 +1,8 @@
|
||||
.log-row {
|
||||
position: relative;
|
||||
}
|
||||
.log-row .buttons {
|
||||
position: absolute;
|
||||
right: 1em;
|
||||
}
|
||||
/*# sourceMappingURL=index.css.map */
|
||||
1
web/views/@default/log/index.css.map
Normal file
1
web/views/@default/log/index.css.map
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"sources":["index.less"],"names":[],"mappings":"AAAA;EACC,kBAAA;;AADD,QAGC;EACC,kBAAA;EACA,UAAA","file":"index.css"}
|
||||
@@ -1,4 +1,5 @@
|
||||
{$layout}
|
||||
{$template "menu"}
|
||||
|
||||
{$var "header"}
|
||||
<!-- datepicker -->
|
||||
@@ -9,7 +10,6 @@
|
||||
<link rel="stylesheet" href="/js/pikaday.triangle.css"/>
|
||||
{$end}
|
||||
|
||||
|
||||
<div class="margin"></div>
|
||||
|
||||
<form method="get" action="/log" class="ui form" autocomplete="off">
|
||||
@@ -42,9 +42,11 @@
|
||||
|
||||
<table class="ui table selectable" v-for="log in logs">
|
||||
<tr :class="{error: log.level == 'error', warning: log.level == 'warn'}">
|
||||
<td>{{log.createdTime}} <span class="grey"> <span
|
||||
<td class="log-row">{{log.createdTime}} <span class="grey"> <span
|
||||
v-if="log.userName.length > 0">| {{log.userName}}</span> | {{log.ip}}<span
|
||||
v-if="log.region.length > 0"> | {{log.region}}</span> <a href="" @click.prevent="showMore(log)" title="显示更多">...</a> <span v-if="log.moreVisible">{{log.action}}</span></span></td>
|
||||
v-if="log.region.length > 0"> | {{log.region}}</span> <a href="" @click.prevent="showMore(log)" title="显示更多">...</a> <span v-if="log.moreVisible">{{log.action}}</span></span>
|
||||
<span class="buttons"><a v-if="logConfig.canDelete" href="" title="删除" @click.prevent="deleteLog(log.id)"><i class="icon remove small"></i></a> </span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr :class="{error: log.level == 'error', warning: log.level == 'warn'}">
|
||||
<td>{{log.description}}</td>
|
||||
|
||||
@@ -18,4 +18,15 @@ Tea.context(function () {
|
||||
window.location = "/log/exportExcel?dayFrom=" + that.dayFrom + "&dayTo=" + that.dayTo + "&keyword=" + that.keyword
|
||||
})
|
||||
}
|
||||
|
||||
this.deleteLog = function (logId) {
|
||||
let that = this
|
||||
teaweb.confirm("确定要删除此日志吗?", function () {
|
||||
that.$post(".delete")
|
||||
.params({
|
||||
logId: logId
|
||||
})
|
||||
.refresh()
|
||||
})
|
||||
}
|
||||
})
|
||||
8
web/views/@default/log/index.less
Normal file
8
web/views/@default/log/index.less
Normal file
@@ -0,0 +1,8 @@
|
||||
.log-row {
|
||||
position: relative;
|
||||
|
||||
.buttons {
|
||||
position: absolute;
|
||||
right: 1em;
|
||||
}
|
||||
}
|
||||
37
web/views/@default/log/settings.html
Normal file
37
web/views/@default/log/settings.html
Normal file
@@ -0,0 +1,37 @@
|
||||
{$layout}
|
||||
{$template "menu"}
|
||||
|
||||
<form method="post" class="ui form" data-tea-success="success" data-tea-action="$">
|
||||
<csrf-token></csrf-token>
|
||||
|
||||
<table class="ui table definition selectable">
|
||||
<tr>
|
||||
<td class="title">是否可以手动删除日志</td>
|
||||
<td>
|
||||
<checkbox name="canDelete" v-model="logConfig.canDelete"></checkbox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>是否可以手动清理</td>
|
||||
<td>
|
||||
<checkbox name="canClean" v-model="logConfig.canClean"></checkbox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>日志保留天数</td>
|
||||
<td>
|
||||
<input type="text" name="days" v-model="logConfig.days" style="width:5em" maxlength="3"/>
|
||||
<p class="comment">超过此天数的日志将会被自动清理,0表示不自动清理。</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>最大容量限制</td>
|
||||
<td>
|
||||
<size-capacity-box :v-name="'capacityJSON'" :v-value="logConfig.capacity"></size-capacity-box>
|
||||
<p class="comment">超出此容量限制后将会发送提醒。</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<submit-btn></submit-btn>
|
||||
</form>
|
||||
3
web/views/@default/log/settings.js
Normal file
3
web/views/@default/log/settings.js
Normal file
@@ -0,0 +1,3 @@
|
||||
Tea.context(function () {
|
||||
this.success = NotifyReloadSuccess("保存成功")
|
||||
})
|
||||
Reference in New Issue
Block a user