Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wiki-js
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
wiki-js
Commits
a6823519
Commit
a6823519
authored
Apr 28, 2017
by
NGPixel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: Fixed logger filters
parent
4ba4f290
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
54 additions
and
51 deletions
+54
-51
agent.js
server/agent.js
+8
-9
index.js
server/index.js
+7
-8
git.js
server/libs/git.js
+12
-12
local.js
server/libs/local.js
+2
-2
logger.js
server/libs/logger.js
+22
-17
search.js
server/libs/search.js
+3
-3
No files found.
server/agent.js
View file @
a6823519
...
@@ -8,10 +8,9 @@ const path = require('path')
...
@@ -8,10 +8,9 @@ const path = require('path')
const
ROOTPATH
=
process
.
cwd
()
const
ROOTPATH
=
process
.
cwd
()
const
SERVERPATH
=
path
.
join
(
ROOTPATH
,
'server'
)
const
SERVERPATH
=
path
.
join
(
ROOTPATH
,
'server'
)
global
.
PROCNAME
=
'AGENT'
global
.
ROOTPATH
=
ROOTPATH
global
.
ROOTPATH
=
ROOTPATH
global
.
SERVERPATH
=
SERVERPATH
global
.
SERVERPATH
=
SERVERPATH
global
.
IS_DEBUG
=
process
.
env
.
NODE_ENV
===
'development'
const
IS_DEBUG
=
process
.
env
.
NODE_ENV
===
'development'
let
appconf
=
require
(
'./libs/config'
)()
let
appconf
=
require
(
'./libs/config'
)()
global
.
appconfig
=
appconf
.
config
global
.
appconfig
=
appconf
.
config
...
@@ -21,13 +20,13 @@ global.appdata = appconf.data
...
@@ -21,13 +20,13 @@ global.appdata = appconf.data
// Load Winston
// Load Winston
// ----------------------------------------
// ----------------------------------------
global
.
winston
=
require
(
'./libs/logger'
)(
IS_DEBUG
)
global
.
winston
=
require
(
'./libs/logger'
)(
IS_DEBUG
,
'AGENT'
)
// ----------------------------------------
// ----------------------------------------
// Load global modules
// Load global modules
// ----------------------------------------
// ----------------------------------------
winston
.
info
(
'
[AGENT]
Background Agent is initializing...'
)
winston
.
info
(
'Background Agent is initializing...'
)
global
.
db
=
require
(
'./libs/db'
).
init
()
global
.
db
=
require
(
'./libs/db'
).
init
()
global
.
upl
=
require
(
'./libs/uploads-agent'
).
init
()
global
.
upl
=
require
(
'./libs/uploads-agent'
).
init
()
...
@@ -64,10 +63,10 @@ db.onReady.then(() => {
...
@@ -64,10 +63,10 @@ db.onReady.then(() => {
// Make sure we don't start two concurrent jobs
// Make sure we don't start two concurrent jobs
if
(
jobIsBusy
)
{
if
(
jobIsBusy
)
{
winston
.
warn
(
'
[AGENT]
Previous job has not completed gracefully or is still running! Skipping for now. (This is not normal, you should investigate)'
)
winston
.
warn
(
'Previous job has not completed gracefully or is still running! Skipping for now. (This is not normal, you should investigate)'
)
return
return
}
}
winston
.
info
(
'
[AGENT]
Running all jobs...'
)
winston
.
info
(
'Running all jobs...'
)
jobIsBusy
=
true
jobIsBusy
=
true
// Prepare async job collector
// Prepare async job collector
...
@@ -165,7 +164,7 @@ db.onReady.then(() => {
...
@@ -165,7 +164,7 @@ db.onReady.then(() => {
// ----------------------------------------
// ----------------------------------------
Promise
.
all
(
jobs
).
then
(()
=>
{
Promise
.
all
(
jobs
).
then
(()
=>
{
winston
.
info
(
'
[AGENT]
All jobs completed successfully! Going to sleep for now.'
)
winston
.
info
(
'All jobs completed successfully! Going to sleep for now.'
)
if
(
!
jobUplWatchStarted
)
{
if
(
!
jobUplWatchStarted
)
{
jobUplWatchStarted
=
true
jobUplWatchStarted
=
true
...
@@ -176,7 +175,7 @@ db.onReady.then(() => {
...
@@ -176,7 +175,7 @@ db.onReady.then(() => {
return
true
return
true
}).
catch
((
err
)
=>
{
}).
catch
((
err
)
=>
{
winston
.
error
(
'
[AGENT]
One or more jobs have failed: '
,
err
)
winston
.
error
(
'One or more jobs have failed: '
,
err
)
}).
finally
(()
=>
{
}).
finally
(()
=>
{
jobIsBusy
=
false
jobIsBusy
=
false
})
})
...
@@ -192,7 +191,7 @@ db.onReady.then(() => {
...
@@ -192,7 +191,7 @@ db.onReady.then(() => {
// ----------------------------------------
// ----------------------------------------
process
.
on
(
'disconnect'
,
()
=>
{
process
.
on
(
'disconnect'
,
()
=>
{
winston
.
warn
(
'
[AGENT]
Lost connection to main server. Exiting...'
)
winston
.
warn
(
'Lost connection to main server. Exiting...'
)
job
.
stop
()
job
.
stop
()
process
.
exit
()
process
.
exit
()
})
})
...
...
server/index.js
View file @
a6823519
...
@@ -10,10 +10,9 @@ const path = require('path')
...
@@ -10,10 +10,9 @@ const path = require('path')
const
ROOTPATH
=
process
.
cwd
()
const
ROOTPATH
=
process
.
cwd
()
const
SERVERPATH
=
path
.
join
(
ROOTPATH
,
'server'
)
const
SERVERPATH
=
path
.
join
(
ROOTPATH
,
'server'
)
global
.
PROCNAME
=
'SERVER'
global
.
ROOTPATH
=
ROOTPATH
global
.
ROOTPATH
=
ROOTPATH
global
.
SERVERPATH
=
SERVERPATH
global
.
SERVERPATH
=
SERVERPATH
global
.
IS_DEBUG
=
process
.
env
.
NODE_ENV
===
'development'
const
IS_DEBUG
=
process
.
env
.
NODE_ENV
===
'development'
process
.
env
.
VIPS_WARNING
=
false
process
.
env
.
VIPS_WARNING
=
false
...
@@ -25,8 +24,8 @@ global.appdata = appconf.data
...
@@ -25,8 +24,8 @@ global.appdata = appconf.data
// Load Winston
// Load Winston
// ----------------------------------------
// ----------------------------------------
global
.
winston
=
require
(
'./libs/logger'
)(
IS_DEBUG
)
global
.
winston
=
require
(
'./libs/logger'
)(
IS_DEBUG
,
'SERVER'
)
winston
.
info
(
'
[SERVER]
Wiki.js is initializing...'
)
winston
.
info
(
'Wiki.js is initializing...'
)
// ----------------------------------------
// ----------------------------------------
// Load global modules
// Load global modules
...
@@ -188,7 +187,7 @@ app.use(function (err, req, res, next) {
...
@@ -188,7 +187,7 @@ app.use(function (err, req, res, next) {
// Start HTTP server
// Start HTTP server
// ----------------------------------------
// ----------------------------------------
winston
.
info
(
'
[SERVER]
Starting HTTP/WS server on port '
+
appconfig
.
port
+
'...'
)
winston
.
info
(
'Starting HTTP/WS server on port '
+
appconfig
.
port
+
'...'
)
app
.
set
(
'port'
,
appconfig
.
port
)
app
.
set
(
'port'
,
appconfig
.
port
)
var
server
=
http
.
createServer
(
app
)
var
server
=
http
.
createServer
(
app
)
...
@@ -203,10 +202,10 @@ server.on('error', (error) => {
...
@@ -203,10 +202,10 @@ server.on('error', (error) => {
// handle specific listen errors with friendly messages
// handle specific listen errors with friendly messages
switch
(
error
.
code
)
{
switch
(
error
.
code
)
{
case
'EACCES'
:
case
'EACCES'
:
console
.
error
(
'Listening on port '
+
appconfig
.
port
+
' requires elevated privileges!'
)
winston
.
error
(
'Listening on port '
+
appconfig
.
port
+
' requires elevated privileges!'
)
return
process
.
exit
(
1
)
return
process
.
exit
(
1
)
case
'EADDRINUSE'
:
case
'EADDRINUSE'
:
console
.
error
(
'Port '
+
appconfig
.
port
+
' is already in use!'
)
winston
.
error
(
'Port '
+
appconfig
.
port
+
' is already in use!'
)
return
process
.
exit
(
1
)
return
process
.
exit
(
1
)
default
:
default
:
throw
error
throw
error
...
@@ -214,7 +213,7 @@ server.on('error', (error) => {
...
@@ -214,7 +213,7 @@ server.on('error', (error) => {
})
})
server
.
on
(
'listening'
,
()
=>
{
server
.
on
(
'listening'
,
()
=>
{
winston
.
info
(
'
[SERVER]
HTTP/WS server started successfully! [RUNNING]'
)
winston
.
info
(
'HTTP/WS server started successfully! [RUNNING]'
)
})
})
// ----------------------------------------
// ----------------------------------------
...
...
server/libs/git.js
View file @
a6823519
...
@@ -66,13 +66,13 @@ module.exports = {
...
@@ -66,13 +66,13 @@ module.exports = {
_initRepo
(
appconfig
)
{
_initRepo
(
appconfig
)
{
let
self
=
this
let
self
=
this
winston
.
info
(
'
['
+
PROCNAME
+
'.Git]
Checking Git repository...'
)
winston
.
info
(
'Checking Git repository...'
)
// -> Check if path is accessible
// -> Check if path is accessible
return
fs
.
mkdirAsync
(
self
.
_repo
.
path
).
catch
((
err
)
=>
{
return
fs
.
mkdirAsync
(
self
.
_repo
.
path
).
catch
((
err
)
=>
{
if
(
err
.
code
!==
'EEXIST'
)
{
if
(
err
.
code
!==
'EEXIST'
)
{
winston
.
error
(
'
['
+
PROCNAME
+
'.Git]
Invalid Git repository path or missing permissions.'
)
winston
.
error
(
'Invalid Git repository path or missing permissions.'
)
}
}
}).
then
(()
=>
{
}).
then
(()
=>
{
self
.
_git
=
new
Git
({
'git-dir'
:
self
.
_repo
.
path
})
self
.
_git
=
new
Git
({
'git-dir'
:
self
.
_repo
.
path
})
...
@@ -87,7 +87,7 @@ module.exports = {
...
@@ -87,7 +87,7 @@ module.exports = {
})
})
}).
then
(()
=>
{
}).
then
(()
=>
{
if
(
appconfig
.
git
===
false
)
{
if
(
appconfig
.
git
===
false
)
{
winston
.
info
(
'
['
+
PROCNAME
+
'.Git] Remote
syncing is disabled. Not recommended!'
)
winston
.
info
(
'
Remote Git
syncing is disabled. Not recommended!'
)
return
Promise
.
resolve
(
true
)
return
Promise
.
resolve
(
true
)
}
}
...
@@ -124,10 +124,10 @@ module.exports = {
...
@@ -124,10 +124,10 @@ module.exports = {
})
})
})
})
}).
catch
((
err
)
=>
{
}).
catch
((
err
)
=>
{
winston
.
error
(
'
['
+
PROCNAME
+
'.Git]
Git remote error!'
)
winston
.
error
(
'Git remote error!'
)
throw
err
throw
err
}).
then
(()
=>
{
}).
then
(()
=>
{
winston
.
info
(
'
['
+
PROCNAME
+
'.Git]
Git repository is OK.'
)
winston
.
info
(
'Git repository is OK.'
)
return
true
return
true
})
})
},
},
...
@@ -157,12 +157,12 @@ module.exports = {
...
@@ -157,12 +157,12 @@ module.exports = {
// Fetch
// Fetch
winston
.
info
(
'
['
+
PROCNAME
+
'.Git] Performing pull from remote
repository...'
)
winston
.
info
(
'
Performing pull from remote Git
repository...'
)
return
self
.
_git
.
pull
(
'origin'
,
self
.
_repo
.
branch
).
then
((
cProc
)
=>
{
return
self
.
_git
.
pull
(
'origin'
,
self
.
_repo
.
branch
).
then
((
cProc
)
=>
{
winston
.
info
(
'
['
+
PROCNAME
+
'.Git]
Pull completed.'
)
winston
.
info
(
'
Git
Pull completed.'
)
})
})
.
catch
((
err
)
=>
{
.
catch
((
err
)
=>
{
winston
.
error
(
'
['
+
PROCNAME
+
'.Git]
Unable to fetch from git origin!'
)
winston
.
error
(
'Unable to fetch from git origin!'
)
throw
err
throw
err
})
})
.
then
(()
=>
{
.
then
(()
=>
{
...
@@ -172,19 +172,19 @@ module.exports = {
...
@@ -172,19 +172,19 @@ module.exports = {
let
out
=
cProc
.
stdout
.
toString
()
let
out
=
cProc
.
stdout
.
toString
()
if
(
_
.
includes
(
out
,
'commit'
))
{
if
(
_
.
includes
(
out
,
'commit'
))
{
winston
.
info
(
'
['
+
PROCNAME
+
'.Git] Performing push to remote
repository...'
)
winston
.
info
(
'
Performing push to remote Git
repository...'
)
return
self
.
_git
.
push
(
'origin'
,
self
.
_repo
.
branch
).
then
(()
=>
{
return
self
.
_git
.
push
(
'origin'
,
self
.
_repo
.
branch
).
then
(()
=>
{
return
winston
.
info
(
'
['
+
PROCNAME
+
'.Git]
Push completed.'
)
return
winston
.
info
(
'
Git
Push completed.'
)
})
})
}
else
{
}
else
{
winston
.
info
(
'
['
+
PROCNAME
+
'.Git]
Push skipped. Repository is already in sync.'
)
winston
.
info
(
'
Git
Push skipped. Repository is already in sync.'
)
}
}
return
true
return
true
})
})
})
})
.
catch
((
err
)
=>
{
.
catch
((
err
)
=>
{
winston
.
error
(
'
['
+
PROCNAME
+
'.Git] Unable to push changes to remote
!'
)
winston
.
error
(
'
Unable to push changes to remote Git repository
!'
)
throw
err
throw
err
})
})
},
},
...
...
server/libs/local.js
View file @
a6823519
...
@@ -98,7 +98,7 @@ module.exports = {
...
@@ -98,7 +98,7 @@ module.exports = {
* @return {Void} Void
* @return {Void} Void
*/
*/
createBaseDirectories
(
appconfig
)
{
createBaseDirectories
(
appconfig
)
{
winston
.
info
(
'
[SERVER.Local]
Checking data directories...'
)
winston
.
info
(
'Checking data directories...'
)
try
{
try
{
fs
.
ensureDirSync
(
path
.
resolve
(
ROOTPATH
,
appconfig
.
paths
.
data
))
fs
.
ensureDirSync
(
path
.
resolve
(
ROOTPATH
,
appconfig
.
paths
.
data
))
...
@@ -121,7 +121,7 @@ module.exports = {
...
@@ -121,7 +121,7 @@ module.exports = {
winston
.
error
(
err
)
winston
.
error
(
err
)
}
}
winston
.
info
(
'
[SERVER.Local]
Data and Repository directories are OK.'
)
winston
.
info
(
'Data and Repository directories are OK.'
)
},
},
/**
/**
...
...
server/libs/logger.js
View file @
a6823519
'use strict'
'use strict'
const
winston
=
require
(
'winston'
)
module
.
exports
=
(
isDebug
,
processName
)
=>
{
let
winston
=
require
(
'winston'
)
module
.
exports
=
(
isDebug
)
=>
{
if
(
typeof
processName
===
'undefined'
)
{
if
(
typeof
PROCNAME
===
'undefined'
)
{
processName
=
'SERVER'
const
PROCNAME
=
'SERVER'
// eslint-disable-line no-unused-vars
}
}
// Console
+ File Logs
// Console
winston
.
remove
(
winston
.
transports
.
Console
)
let
logger
=
new
(
winston
.
Logger
)({
winston
.
add
(
winston
.
transports
.
Console
,
{
level
:
(
isDebug
)
?
'debug'
:
'info'
,
transports
:
[
new
(
winston
.
transports
.
Console
)({
level
:
(
isDebug
)
?
'debug'
:
'info'
,
level
:
(
isDebug
)
?
'debug'
:
'info'
,
prettyPrint
:
true
,
prettyPrint
:
true
,
colorize
:
true
,
colorize
:
true
,
silent
:
false
,
silent
:
false
,
timestamp
:
true
,
timestamp
:
true
filters
:
[(
level
,
msg
,
meta
)
=>
{
})
return
'['
+
PROCNAME
+
'] '
+
msg
// eslint-disable-line no-undef
]
}]
})
logger
.
filters
.
push
((
level
,
msg
)
=>
{
return
'['
+
processName
+
'] '
+
msg
})
})
// External services
// External services
if
(
appconfig
.
externalLogging
.
bugsnag
)
{
if
(
appconfig
.
externalLogging
.
bugsnag
)
{
const
bugsnagTransport
=
require
(
'./winston-transports/bugsnag'
)
const
bugsnagTransport
=
require
(
'./winston-transports/bugsnag'
)
winston
.
add
(
bugsnagTransport
,
{
logger
.
add
(
bugsnagTransport
,
{
level
:
'warn'
,
level
:
'warn'
,
key
:
appconfig
.
externalLogging
.
bugsnag
key
:
appconfig
.
externalLogging
.
bugsnag
})
})
...
@@ -33,7 +38,7 @@ module.exports = (isDebug) => {
...
@@ -33,7 +38,7 @@ module.exports = (isDebug) => {
if
(
appconfig
.
externalLogging
.
loggly
)
{
if
(
appconfig
.
externalLogging
.
loggly
)
{
require
(
'winston-loggly-bulk'
)
require
(
'winston-loggly-bulk'
)
winston
.
add
(
winston
.
transports
.
Loggly
,
{
logger
.
add
(
winston
.
transports
.
Loggly
,
{
token
:
appconfig
.
externalLogging
.
loggly
.
token
,
token
:
appconfig
.
externalLogging
.
loggly
.
token
,
subdomain
:
appconfig
.
externalLogging
.
loggly
.
subdomain
,
subdomain
:
appconfig
.
externalLogging
.
loggly
.
subdomain
,
tags
:
[
'wiki-js'
],
tags
:
[
'wiki-js'
],
...
@@ -44,7 +49,7 @@ module.exports = (isDebug) => {
...
@@ -44,7 +49,7 @@ module.exports = (isDebug) => {
if
(
appconfig
.
externalLogging
.
papertrail
)
{
if
(
appconfig
.
externalLogging
.
papertrail
)
{
require
(
'winston-papertrail'
).
Papertrail
// eslint-disable-line no-unused-expressions
require
(
'winston-papertrail'
).
Papertrail
// eslint-disable-line no-unused-expressions
winston
.
add
(
winston
.
transports
.
Papertrail
,
{
logger
.
add
(
winston
.
transports
.
Papertrail
,
{
host
:
appconfig
.
externalLogging
.
papertrail
.
host
,
host
:
appconfig
.
externalLogging
.
papertrail
.
host
,
port
:
appconfig
.
externalLogging
.
papertrail
.
port
,
port
:
appconfig
.
externalLogging
.
papertrail
.
port
,
level
:
'warn'
,
level
:
'warn'
,
...
@@ -54,7 +59,7 @@ module.exports = (isDebug) => {
...
@@ -54,7 +59,7 @@ module.exports = (isDebug) => {
if
(
appconfig
.
externalLogging
.
rollbar
)
{
if
(
appconfig
.
externalLogging
.
rollbar
)
{
const
rollbarTransport
=
require
(
'./winston-transports/rollbar'
)
const
rollbarTransport
=
require
(
'./winston-transports/rollbar'
)
winston
.
add
(
rollbarTransport
,
{
logger
.
add
(
rollbarTransport
,
{
level
:
'warn'
,
level
:
'warn'
,
key
:
appconfig
.
externalLogging
.
rollbar
key
:
appconfig
.
externalLogging
.
rollbar
})
})
...
@@ -62,11 +67,11 @@ module.exports = (isDebug) => {
...
@@ -62,11 +67,11 @@ module.exports = (isDebug) => {
if
(
appconfig
.
externalLogging
.
sentry
)
{
if
(
appconfig
.
externalLogging
.
sentry
)
{
const
sentryTransport
=
require
(
'./winston-transports/sentry'
)
const
sentryTransport
=
require
(
'./winston-transports/sentry'
)
winston
.
add
(
sentryTransport
,
{
logger
.
add
(
sentryTransport
,
{
level
:
'warn'
,
level
:
'warn'
,
key
:
appconfig
.
externalLogging
.
sentry
key
:
appconfig
.
externalLogging
.
sentry
})
})
}
}
return
winston
return
logger
}
}
server/libs/search.js
View file @
a6823519
...
@@ -27,12 +27,12 @@ module.exports = {
...
@@ -27,12 +27,12 @@ module.exports = {
stopwords
:
_
.
get
(
stopWord
,
appconfig
.
lang
,
[])
stopwords
:
_
.
get
(
stopWord
,
appconfig
.
lang
,
[])
},
(
err
,
si
)
=>
{
},
(
err
,
si
)
=>
{
if
(
err
)
{
if
(
err
)
{
winston
.
error
(
'
[SERVER.Search]
Failed to initialize search index.'
,
err
)
winston
.
error
(
'Failed to initialize search index.'
,
err
)
reject
(
err
)
reject
(
err
)
}
else
{
}
else
{
self
.
_si
=
Promise
.
promisifyAll
(
si
)
self
.
_si
=
Promise
.
promisifyAll
(
si
)
self
.
_si
.
flushAsync
().
then
(()
=>
{
self
.
_si
.
flushAsync
().
then
(()
=>
{
winston
.
info
(
'
[SERVER.Search]
Search index flushed and ready.'
)
winston
.
info
(
'Search index flushed and ready.'
)
resolve
(
true
)
resolve
(
true
)
})
})
}
}
...
@@ -92,7 +92,7 @@ module.exports = {
...
@@ -92,7 +92,7 @@ module.exports = {
parent
:
content
.
parent
||
''
,
parent
:
content
.
parent
||
''
,
content
:
content
.
content
||
''
content
:
content
.
content
||
''
}]).
then
(()
=>
{
}]).
then
(()
=>
{
winston
.
log
(
'verbose'
,
'
[SERVER.Search] Entry '
+
content
.
_id
+
' added/updated to
index.'
)
winston
.
log
(
'verbose'
,
'
Entry '
+
content
.
_id
+
' added/updated to search
index.'
)
return
true
return
true
}).
catch
((
err
)
=>
{
}).
catch
((
err
)
=>
{
winston
.
error
(
err
)
winston
.
error
(
err
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment