feat: admin - system info
This commit is contained in:
parent
392cbe9388
commit
8462e18fc5
@ -7,7 +7,7 @@
|
||||
v-layout.mt-3(row wrap)
|
||||
v-flex(lg6 xs12)
|
||||
v-card
|
||||
v-btn(fab, absolute, right, top, small, light): v-icon refresh
|
||||
v-btn(fab, absolute, right, top, small, light, @click='refresh'): v-icon refresh
|
||||
v-list(two-line, dense)
|
||||
v-subheader Wiki.js
|
||||
v-list-tile(avatar)
|
||||
@ -15,13 +15,13 @@
|
||||
v-icon.blue.white--text system_update_alt
|
||||
v-list-tile-content
|
||||
v-list-tile-title Current Version
|
||||
v-list-tile-sub-title 2.0.0
|
||||
v-list-tile-sub-title {{ info.currentVersion }}
|
||||
v-list-tile(avatar)
|
||||
v-list-tile-avatar
|
||||
v-icon.blue.white--text open_in_browser
|
||||
v-list-tile-content
|
||||
v-list-tile-title Latest Version
|
||||
v-list-tile-sub-title 2.0.0
|
||||
v-list-tile-sub-title {{ info.latestVersion }}
|
||||
v-list-tile-action
|
||||
v-list-tile-action-text Published 4 days ago
|
||||
|
||||
@ -33,31 +33,31 @@
|
||||
v-icon.blue-grey.white--text bubble_chart
|
||||
v-list-tile-content
|
||||
v-list-tile-title Operating System
|
||||
v-list-tile-sub-title Linux (linux) 4.4.0-116-generic x64
|
||||
v-list-tile-sub-title {{ info.operatingSystem }}
|
||||
v-list-tile(avatar)
|
||||
v-list-tile-avatar
|
||||
v-icon.blue-grey.white--text computer
|
||||
v-list-tile-content
|
||||
v-list-tile-title Hostname
|
||||
v-list-tile-sub-title wikijs
|
||||
v-list-tile-sub-title {{ info.hostname }}
|
||||
v-list-tile(avatar)
|
||||
v-list-tile-avatar
|
||||
v-icon.blue-grey.white--text nfc
|
||||
v-list-tile-content
|
||||
v-list-tile-title CPU Cores
|
||||
v-list-tile-sub-title 8
|
||||
v-list-tile-sub-title {{ info.cpuCores }}
|
||||
v-list-tile(avatar)
|
||||
v-list-tile-avatar
|
||||
v-icon.blue-grey.white--text memory
|
||||
v-list-tile-content
|
||||
v-list-tile-title Total RAM
|
||||
v-list-tile-sub-title 16.0 Gb
|
||||
v-list-tile-sub-title {{ info.ramTotal }}
|
||||
v-list-tile(avatar)
|
||||
v-list-tile-avatar
|
||||
v-icon.blue-grey.white--text last_page
|
||||
v-list-tile-content
|
||||
v-list-tile-title Working Directory
|
||||
v-list-tile-sub-title /var/wiki
|
||||
v-list-tile-sub-title {{ info.workingDirectory }}
|
||||
|
||||
v-flex(lg6 xs12)
|
||||
v-card.pb-3
|
||||
@ -68,7 +68,7 @@
|
||||
v-avatar.light-green(size='40')
|
||||
icon-node-js(fillColor='#FFFFFF')
|
||||
v-list-tile-content
|
||||
v-list-tile-title 8.9.4
|
||||
v-list-tile-title {{ info.nodeVersion }}
|
||||
|
||||
v-divider
|
||||
|
||||
@ -78,7 +78,10 @@
|
||||
v-avatar.red(size='40')
|
||||
icon-cube(fillColor='#FFFFFF')
|
||||
v-list-tile-content
|
||||
v-list-tile-title 4.0.8
|
||||
v-list-tile-title {{ info.redisVersion }}
|
||||
v-list-tile-sub-title {{ info.redisHost }}
|
||||
v-list-tile-action
|
||||
v-list-tile-action-text RAM Usage: {{ info.redisUsedRAM }} / {{ info.redisTotalRAM }}
|
||||
|
||||
v-divider
|
||||
|
||||
@ -88,7 +91,16 @@
|
||||
v-avatar.indigo.darken-1(size='40')
|
||||
icon-database(fillColor='#FFFFFF')
|
||||
v-list-tile-content
|
||||
v-list-tile-title 9.6.8
|
||||
v-list-tile-title {{ info.postgreVersion }}
|
||||
v-list-tile-sub-title {{ info.postgreHost }}
|
||||
|
||||
v-snackbar(
|
||||
color='success'
|
||||
top
|
||||
v-model='refreshCompleted'
|
||||
)
|
||||
v-icon.mr-3(dark) cached
|
||||
| System Info has been refreshed.
|
||||
|
||||
</template>
|
||||
|
||||
@ -97,6 +109,8 @@ import IconCube from 'mdi/cube'
|
||||
import IconDatabase from 'mdi/database'
|
||||
import IconNodeJs from 'mdi/nodejs'
|
||||
|
||||
/* global CONSTANTS */
|
||||
|
||||
export default {
|
||||
components: {
|
||||
IconCube,
|
||||
@ -104,7 +118,22 @@ export default {
|
||||
IconNodeJs
|
||||
},
|
||||
data() {
|
||||
return {}
|
||||
return {
|
||||
info: {},
|
||||
refreshCompleted: false
|
||||
}
|
||||
},
|
||||
apollo: {
|
||||
info: {
|
||||
query: CONSTANTS.GRAPH.SYSTEM.QUERY_INFO,
|
||||
update: (data) => data.system.info
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
async refresh() {
|
||||
await this.$apollo.queries.info.refetch()
|
||||
this.refreshCompleted = true
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
@ -65,6 +65,31 @@ export default {
|
||||
}
|
||||
`
|
||||
},
|
||||
SYSTEM: {
|
||||
QUERY_INFO: gql`
|
||||
query {
|
||||
system {
|
||||
info {
|
||||
currentVersion
|
||||
latestVersion
|
||||
latestVersionReleaseDate
|
||||
operatingSystem
|
||||
hostname
|
||||
cpuCores
|
||||
ramTotal
|
||||
workingDirectory
|
||||
nodeVersion
|
||||
redisVersion
|
||||
redisUsedRAM
|
||||
redisTotalRAM
|
||||
redisHost
|
||||
postgreVersion
|
||||
postgreHost
|
||||
}
|
||||
}
|
||||
}
|
||||
`
|
||||
},
|
||||
TRANSLATIONS: {
|
||||
QUERY_NAMESPACE: gql`
|
||||
query($locale: String!, $namespace: String!) {
|
||||
|
36
server/graph/resolvers/system.js
Normal file
36
server/graph/resolvers/system.js
Normal file
@ -0,0 +1,36 @@
|
||||
const _ = require('lodash')
|
||||
const os = require('os')
|
||||
const filesize = require('filesize')
|
||||
|
||||
/* global WIKI */
|
||||
|
||||
module.exports = {
|
||||
Query: {
|
||||
async system() { return {} }
|
||||
},
|
||||
Mutation: {
|
||||
async system() { return {} }
|
||||
},
|
||||
SystemQuery: {
|
||||
async info(obj, args, context, info) {
|
||||
return {
|
||||
currentVersion: WIKI.version,
|
||||
latestVersion: WIKI.version, // TODO
|
||||
latestVersionReleaseDate: new Date(), // TODO
|
||||
operatingSystem: `${os.type()} (${os.platform()}) ${os.release()} ${os.arch()}`,
|
||||
hostname: os.hostname(),
|
||||
cpuCores: os.cpus().length,
|
||||
ramTotal: filesize(os.totalmem()),
|
||||
workingDirectory: process.cwd(),
|
||||
nodeVersion: process.version.substr(1),
|
||||
redisVersion: WIKI.redis.serverInfo.redis_version,
|
||||
redisUsedRAM: WIKI.redis.serverInfo.used_memory_human,
|
||||
redisTotalRAM: _.get(WIKI.redis.serverInfo, 'total_system_memory_human', 'N/A'),
|
||||
redisHost: WIKI.redis.options.host,
|
||||
postgreVersion: WIKI.db.inst.options.databaseVersion,
|
||||
postgreHost: WIKI.db.inst.options.host
|
||||
}
|
||||
}
|
||||
},
|
||||
SystemMutation: { }
|
||||
}
|
@ -37,9 +37,13 @@ type SystemInfo {
|
||||
operatingSystem: String
|
||||
hostname: String
|
||||
cpuCores: Int
|
||||
ramTotal: Int
|
||||
ramTotal: String
|
||||
workingDirectory: String
|
||||
nodeVersion: String
|
||||
redisVersion: String
|
||||
redisUsedRAM: String
|
||||
redisTotalRAM: String
|
||||
redisHost: String
|
||||
postgreVersion: String
|
||||
postgreHost: String
|
||||
}
|
||||
|
@ -27,8 +27,7 @@ html
|
||||
|
||||
block head
|
||||
|
||||
link(href="/css/client.css?c473342a20546c545ebc" rel="stylesheet")
|
||||
script(type="text/javascript" src="/js/runtime.js?c473342a20546c545ebc")
|
||||
script(type="text/javascript" src="/js/client.js?c473342a20546c545ebc" async)
|
||||
script(type="text/javascript" src="/js/runtime.js")
|
||||
script(type="text/javascript" src="/js/client.js")
|
||||
body
|
||||
block body
|
||||
|
Loading…
Reference in New Issue
Block a user