summaryrefslogtreecommitdiff
path: root/src/client/app/admin/views/logs.vue
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/app/admin/views/logs.vue')
-rw-r--r--src/client/app/admin/views/logs.vue119
1 files changed, 0 insertions, 119 deletions
diff --git a/src/client/app/admin/views/logs.vue b/src/client/app/admin/views/logs.vue
deleted file mode 100644
index cb54318187..0000000000
--- a/src/client/app/admin/views/logs.vue
+++ /dev/null
@@ -1,119 +0,0 @@
-<template>
-<div>
- <ui-card>
- <template #title><fa :icon="faStream"/> {{ $t('logs') }}</template>
- <section class="fit-top">
- <ui-horizon-group inputs>
- <ui-input v-model="domain" :debounce="true">
- <span>{{ $t('domain') }}</span>
- </ui-input>
- <ui-select v-model="level">
- <template #label>{{ $t('level') }}</template>
- <option value="all">{{ $t('levels.all') }}</option>
- <option value="info">{{ $t('levels.info') }}</option>
- <option value="success">{{ $t('levels.success') }}</option>
- <option value="warning">{{ $t('levels.warning') }}</option>
- <option value="error">{{ $t('levels.error') }}</option>
- <option value="debug">{{ $t('levels.debug') }}</option>
- </ui-select>
- </ui-horizon-group>
-
- <div class="nqjzuvev">
- <code v-for="log in logs" :key="log.id" :class="log.level">
- <details>
- <summary><mk-time :time="log.createdAt"/> [{{ log.domain.join('.') }}] {{ log.message }}</summary>
- <vue-json-pretty v-if="log.data" :data="log.data"></vue-json-pretty>
- </details>
- </code>
- </div>
-
- <ui-button @click="deleteAll()">{{ $t('delete-all') }}</ui-button>
- </section>
- </ui-card>
-</div>
-</template>
-
-<script lang="ts">
-import Vue from 'vue';
-import i18n from '../../i18n';
-import { faStream } from '@fortawesome/free-solid-svg-icons';
-import VueJsonPretty from 'vue-json-pretty';
-
-export default Vue.extend({
- i18n: i18n('admin/views/logs.vue'),
-
- components: {
- VueJsonPretty
- },
-
- data() {
- return {
- logs: [],
- level: 'all',
- domain: '',
- faStream
- };
- },
-
- watch: {
- level() {
- this.logs = [];
- this.fetch();
- },
-
- domain() {
- this.logs = [];
- this.fetch();
- }
- },
-
- mounted() {
- this.fetch();
- },
-
- methods: {
- fetch() {
- this.$root.api('admin/logs', {
- level: this.level === 'all' ? null : this.level,
- domain: this.domain === '' ? null : this.domain,
- limit: 100
- }).then(logs => {
- this.logs = logs.reverse();
- });
- },
-
- deleteAll() {
- this.$root.api('admin/delete-logs').then(() => {
- this.$root.dialog({
- type: 'success',
- splash: true
- });
- });
- }
- }
-});
-</script>
-
-<style lang="stylus" scoped>
-.nqjzuvev
- padding 8px
- background #000
- color #fff
- font-size 14px
-
- > code
- display block
-
- &.error
- color #f00
-
- &.warning
- color #ff0
-
- &.success
- color #0f0
-
- &.debug
- opacity 0.7
-
-</style>