Stats adjust
This commit is contained in:
parent
cabb0a1f91
commit
f0915c374d
|
@ -4,13 +4,13 @@ import { subDays } from 'date-fns'
|
||||||
|
|
||||||
const DAYS_TO_KEEP = 90
|
const DAYS_TO_KEEP = 90
|
||||||
|
|
||||||
async function generateStatsForAccessPoint(mac) {
|
async function generateStatsForAccessPoint(accessPoint) {
|
||||||
const timestamp = new Date()
|
const timestamp = new Date()
|
||||||
|
|
||||||
const dbStats = await prisma.wifiDevice.aggregate({
|
const dbStats = await prisma.wifiDevice.aggregate({
|
||||||
where: {
|
where: {
|
||||||
accessPoint: {
|
accessPoint: {
|
||||||
mac
|
mac: accessPoint.mac
|
||||||
},
|
},
|
||||||
status: 'ONLINE'
|
status: 'ONLINE'
|
||||||
},
|
},
|
||||||
|
@ -32,9 +32,6 @@ async function generateStatsForAccessPoint(mac) {
|
||||||
_min: {
|
_min: {
|
||||||
signalStrength: true,
|
signalStrength: true,
|
||||||
speed: true
|
speed: true
|
||||||
},
|
|
||||||
_sum: {
|
|
||||||
usage: true
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -58,13 +55,13 @@ async function generateStatsForAccessPoint(mac) {
|
||||||
maxClientUptime: dbStats._max.uptime || 0,
|
maxClientUptime: dbStats._max.uptime || 0,
|
||||||
|
|
||||||
avgUsage: Math.floor(dbStats._avg.usage, 0),
|
avgUsage: Math.floor(dbStats._avg.usage, 0),
|
||||||
sumUsage: dbStats._sum.usage || 0
|
sumUsage: accessPoint.usage || 0
|
||||||
}
|
}
|
||||||
|
|
||||||
await prisma.accessPointStats.create({
|
await prisma.accessPointStats.create({
|
||||||
data: {
|
data: {
|
||||||
...stats,
|
...stats,
|
||||||
accessPoint: { connect: { mac } }
|
accessPoint: { connect: { mac: accessPoint.mac } }
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -74,7 +71,7 @@ export async function generateStatsForAllAccessPoints() {
|
||||||
const accessPoints = await prisma.accessPoint.findMany()
|
const accessPoints = await prisma.accessPoint.findMany()
|
||||||
|
|
||||||
for (const accessPoint of accessPoints) {
|
for (const accessPoint of accessPoints) {
|
||||||
await generateStatsForAccessPoint(accessPoint.mac)
|
await generateStatsForAccessPoint(accessPoint)
|
||||||
}
|
}
|
||||||
|
|
||||||
logSuccess({
|
logSuccess({
|
||||||
|
|
|
@ -112,8 +112,10 @@ export default {
|
||||||
labels: this.stats.map(stat => new Date(stat.timestamp).getTime()),
|
labels: this.stats.map(stat => new Date(stat.timestamp).getTime()),
|
||||||
datasets: [
|
datasets: [
|
||||||
{
|
{
|
||||||
label: 'Uso médio de banda',
|
label: 'Uso de banda',
|
||||||
data: this.stats.map(stat => stat.avgUsage / 1024 / 1024),
|
data: this.stats.map(
|
||||||
|
stat => (stat.avgUsage * stat.clients) / 1024 / 1024
|
||||||
|
),
|
||||||
|
|
||||||
borderColor: this.$vuetify.theme.isDark
|
borderColor: this.$vuetify.theme.isDark
|
||||||
? this.$vuetify.theme.themes.dark.error
|
? this.$vuetify.theme.themes.dark.error
|
||||||
|
@ -129,6 +131,7 @@ export default {
|
||||||
tension,
|
tension,
|
||||||
yAxisID: 'y1'
|
yAxisID: 'y1'
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
label: 'Clientes conectados',
|
label: 'Clientes conectados',
|
||||||
data: this.stats.map(stat => stat.clients),
|
data: this.stats.map(stat => stat.clients),
|
||||||
|
|
|
@ -105,7 +105,7 @@ export default {
|
||||||
notes
|
notes
|
||||||
updatedAt
|
updatedAt
|
||||||
|
|
||||||
stats(take: 120) {
|
stats(take: 60) {
|
||||||
id
|
id
|
||||||
timestamp
|
timestamp
|
||||||
clients
|
clients
|
||||||
|
@ -115,6 +115,7 @@ export default {
|
||||||
avgClientUptime
|
avgClientUptime
|
||||||
maxClientUptime
|
maxClientUptime
|
||||||
avgUsage
|
avgUsage
|
||||||
|
sumUsage
|
||||||
}
|
}
|
||||||
|
|
||||||
wifiDevices {
|
wifiDevices {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user