Merge pull request #589 from kvpt/heatmap

Fix heatmap
pull/626/head
Hunter Long 2020-06-04 03:20:34 -07:00 committed by GitHub
commit 90eedb7ff7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 19 deletions

View File

@ -82,22 +82,15 @@
},
methods: {
async chartHeatmap() {
let start = new Date(new Date().getUTCFullYear(), new Date().getUTCMonth()-2, 1);
let monthData = [];
let monthNum = start.getUTCMonth()
const monthData = []
let start = this.firstDayOfMonth(this.now())
for (let i=1; i<=3; i++) {
let end = this.lastDayOfMonth(monthNum)
for (let i=0; i<3; i++) {
monthData.push(await this.heatmapData(this.addMonths(start, -i), this.lastDayOfMonth(this.addMonths(start, -i))))
}
window.console.log("getting: ",start, end)
const inputdata = await this.heatmapData(start, end)
monthData.push(inputdata)
start = new Date(start.getUTCFullYear(), start.getUTCMonth()+1, 1);
monthNum += 1
}
this.series = monthData.reverse()
this.ready = true
this.series = monthData
this.ready = true
},
async heatmapData(start, end) {
const data = await Api.service_failures_data(this.service.id, this.toUnix(start), this.toUnix(end), "24h", true)

View File

@ -1,5 +1,5 @@
import Vue from "vue";
const { startOfToday, lastDayOfMonth, subSeconds, getUnixTime, fromUnixTime, formatDistance, isWithinInterval } = require('date-fns')
const { startOfToday, startOfMonth, lastDayOfMonth, subSeconds, getUnixTime, fromUnixTime, differenceInSeconds, formatDistance, addMonths, isWithinInterval } = require('date-fns')
import formatDistanceToNow from 'date-fns/formatDistanceToNow'
import format from 'date-fns/format'
import parseISO from 'date-fns/parseISO'
@ -168,11 +168,14 @@ export default Vue.mixin({
}
return Math.floor(val / 1000) + "μs"
},
lastDayOfMonth(month) {
return new Date(Date.UTC(new Date().getUTCFullYear(), month + 1, 0))
firstDayOfMonth(date) {
return startOfMonth(date)
},
firstDayOfMonth(month) {
return new Date(Date.UTC(new Date().getUTCFullYear(), month, 1)).getUTCDate()
lastDayOfMonth(month) {
return lastDayOfMonth(date)
},
addMonths(date, amount) {
return addMonths(date, amount)
}
}
});