app info is now logged after startup

This commit is contained in:
azivner 2017-11-21 00:25:53 -05:00
parent a3030f845b
commit 163a03663f
6 changed files with 40 additions and 26 deletions

View File

@ -15,6 +15,7 @@ const http = require('http');
const https = require('https');
const config = require('../services/config');
const log = require('../services/log');
const app_info = require('../services/app_info');
const port = normalizePort(config['Network']['port'] || '3000');
app.set('port', port);
@ -40,6 +41,8 @@ else {
log.info("App HTTP server starting up at port " + port);
}
log.info(JSON.stringify(app_info, null, 2));
/**
* Listen on provided port, on all network interfaces.
*/

View File

@ -27,7 +27,9 @@ const settings = (function() {
tabsEl.tabs();
for (const module of settingModules) {
module.settingsLoaded(settings);
if (module.settingsLoaded) {
module.settingsLoaded(settings);
}
}
}
@ -151,21 +153,19 @@ settings.addModule((function () {
};
})());
settings.addModule((function () {
settings.addModule((async function () {
const appVersionEl = $("#app-version");
const dbVersionEl = $("#db-version");
const buildDateEl = $("#build-date");
const buildRevisionEl = $("#build-revision");
function settingsLoaded(settings) {
appVersionEl.html(settings.app_version);
dbVersionEl.html(settings.db_version);
buildDateEl.html(settings.build_date);
buildRevisionEl.html(settings.build_revision);
buildRevisionEl.attr('href', 'https://github.com/zadam/trilium/commit/' + settings.build_revision);
}
const appInfo = await $.get(baseApiUrl + 'app-info');
return {
settingsLoaded
};
appVersionEl.html(appInfo.app_version);
dbVersionEl.html(appInfo.db_version);
buildDateEl.html(appInfo.build_date);
buildRevisionEl.html(appInfo.build_revision);
buildRevisionEl.attr('href', 'https://github.com/zadam/trilium/commit/' + appInfo.build_revision);
return {};
})());

11
routes/api/app_info.js Normal file
View File

@ -0,0 +1,11 @@
"use strict";
const express = require('express');
const router = express.Router();
const app_info = require('../../services/app_info');
router.get('', async (req, res, next) => {
res.send(app_info);
});
module.exports = router;

View File

@ -7,25 +7,13 @@ const options = require('../../services/options');
const audit_category = require('../../services/audit_category');
const auth = require('../../services/auth');
const utils = require('../../services/utils');
const build = require('../../services/build');
const packageJson = require('../../package');
const migration = require('../../services/migration');
// options allowed to be updated directly in settings dialog
const ALLOWED_OPTIONS = ['protected_session_timeout', 'history_snapshot_time_interval'];
function addExtraSettings(settings) {
Object.assign(settings, build);
settings['app_version'] = packageJson.version;
settings['db_version'] = migration.APP_DB_VERSION;
}
router.get('/all', auth.checkApiAuth, async (req, res, next) => {
const settings = await sql.getMap("SELECT opt_name, opt_value FROM options");
addExtraSettings(settings);
res.send(settings);
});
@ -33,8 +21,6 @@ router.get('/', auth.checkApiAuth, async (req, res, next) => {
const settings = await sql.getMap("SELECT opt_name, opt_value FROM options WHERE opt_name IN ("
+ ALLOWED_OPTIONS.map(x => '?').join(",") + ")", ALLOWED_OPTIONS);
addExtraSettings(settings);
res.send(settings);
});

View File

@ -17,6 +17,7 @@ const syncApiRoute = require('./api/sync');
const loginApiRoute = require('./api/login');
const eventLogRoute = require('./api/event_log');
const recentNotesRoute = require('./api/recent_notes');
const appInfoRoute = require('./api/app_info');
function register(app) {
app.use('/', indexRoute);
@ -37,6 +38,7 @@ function register(app) {
app.use('/api/login', loginApiRoute);
app.use('/api/event-log', eventLogRoute);
app.use('/api/recent-notes', recentNotesRoute);
app.use('/api/app-info', appInfoRoute);
}
module.exports = {

12
services/app_info.js Normal file
View File

@ -0,0 +1,12 @@
"use strict";
const build = require('./build');
const packageJson = require('../package');
const migration = require('./migration');
module.exports = {
app_version: packageJson.version,
db_version: migration.APP_DB_VERSION,
build_date: build.build_date,
build_revision: build.build_revision
};