Skip to content
Snippets Groups Projects
Commit c85f5dbf authored by Cyrill Gorcunov's avatar Cyrill Gorcunov Committed by Kirill Yukhin
Browse files

lua/log: do not allow to set json for boot logger


For some reason we've missed that say_set_log_format
doesn't support json format not only for syslog but
for boottime logging as well.

Part-of #689

Reviewed-by: default avatarOleg Babin <olegrok@tarantool.org>
Signed-off-by: default avatarCyrill Gorcunov <gorcunov@gmail.com>
parent 94ef2cf4
No related branches found
No related tags found
No related merge requests found
......@@ -160,8 +160,11 @@ local function log_format(name)
end
if fmt_str2num[name] == ffi.C.SF_JSON then
if ffi.C.log_type() == ffi.C.SAY_LOGGER_SYSLOG then
error("log_format: 'json' can't be used with syslog logger")
if ffi.C.log_type() == ffi.C.SAY_LOGGER_SYSLOG or
ffi.C.log_type() == ffi.C.SAY_LOGGER_BOOT then
local m = "log_format: %s can't be used with " ..
"syslog or boot-time logger"
error(m:format(fmt_num2str[ffi.C.SF_JSON]))
end
ffi.C.say_set_log_format(ffi.C.SF_JSON)
else
......
#!/usr/bin/env tarantool
local test = require('tap').test('log')
test:plan(24)
test:plan(25)
-- gh-3946: Assertion failure when using log_format() before box.cfg()
local log = require('log')
log.log_format('json')
log.log_format('plain')
_, err = pcall(log.log_format, 'json')
test:ok(err:find("log_format: json can\'t be used") ~= nil)
--
-- Check that Tarantool creates ADMIN session for #! script
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment