1
0
mirror of https://github.com/mail-in-a-box/mailinabox.git synced 2026-03-05 15:57:23 +01:00

Initial commit of a log capture and reporting feature

This adds a new section to the admin panel called "Activity", that
supplies charts, graphs and details about messages entering and leaving
the host.

A new daemon captures details of system mail activity by monitoring
the /var/log/mail.log file, summarizing it into a sqllite database
that's kept in user-data.
This commit is contained in:
downtownallday
2021-01-11 18:02:07 -05:00
parent 73a2b72243
commit 2a0e50c8d4
108 changed files with 9027 additions and 6 deletions

View File

@@ -0,0 +1,64 @@
<div>
<div class="d-flex flex-wrap align-items-top">
<chart-multi-line-timeseries
class="pt-1"
:chart_data="data_received"
:width="width"
:height="height/2">
</chart-multi-line-timeseries>
<div class="d-flex flex-wrap align-items-top">
<chart-table
v-if="top_senders_by_count"
:items="top_senders_by_count.items"
:fields="top_senders_by_count.fields"
:caption="top_senders_by_count.y"
class="ml-4 mt-2"
style="max-width:50px">
<template #cell(email)="data">
<router-link class="text-dark" :to='link_to_remote_sender_email(data.value)'>{{ data.value }}</router-link>
</template>
</chart-table>
<chart-table
v-if="top_senders_by_size"
:items="top_senders_by_size.items"
:fields="top_senders_by_size.fields"
:caption="top_senders_by_size.y"
class="ml-4 mt-2"
style="max-width:50px">
<template #cell(email)="data">
<router-link class="text-dark" :to='link_to_remote_sender_email(data.value)'>{{ data.value }}</router-link>
</template>
</chart-table>
</div>
<div class="d-flex flex-wrap align-items-top">
<chart-table
v-if="top_hosts_by_spam_score"
:items="top_hosts_by_spam_score.items"
:fields="top_hosts_by_spam_score.fields"
:caption="top_hosts_by_spam_score.y"
class="ml-4 mt-2"
style="max-width:50px">
<template #cell(remote_host)="data">
<router-link class="text-dark" :to='link_to_remote_sender_server(data.value)'>{{ data.value }}</router-link>
</template>
</chart-table>
<chart-table
v-if="top_user_receiving_spam"
:items="top_user_receiving_spam.items"
:fields="top_user_receiving_spam.fields"
:caption="top_user_receiving_spam.y"
class="ml-4 mt-2"
style="max-width:50px">
<template #cell(rcpt_to)="data">
<router-link class="text-dark" :to='link_to_user(data.value)'>{{ data.value }}</router-link>
</template>
</chart-table>
</div>
</div>
</div>