Log output level in syslog is not working

Hi,

In syslog, we have log output level i.e, Debug, Info, Notice, Warning, Error, Critical, Alert, and Emergency.
If I select one of them(suppose Error level) still I am getting all the logs.

Can someone help me with this?

Thanks in advance.

  • Can you show a picture or copy of where you're making this config change?
  • Which device?
  • Which version of OpenWrt?

You will get the most log output with Debug and the least with Emergency.
Error is a good level to stay if you don't want many things as Warnings are usually harmless and won't affect the operation.

1 Like

Hi @lleachii

Below is the config file where log level is set:

cat /etc/config/system 

config system
        option timezone 'IST-5:30'
        option log_size '1024'
        option log_file '/mnt/syslog'
        option hostname 'qwertyuiopqq'
        option zonename 'Asia/Kolkata'
        option log_ip '192.168.1.25'
        option conloglevel '8'

config timeserver 'ntp'
        list server '0.pool.ntp.org'
        list server '1.asia.pool.ntp.org'
        list server '2.openwrt.pool.ntp.org'
        list server '3.openwrt.pool.ntp.org'
        option enabled '1'
        option enable_server '0'

Below is openwrt version:

cat /etc/openwrt_version 
15.05.1

Below is the lua version:

lua -v
Lua 5.1.5  Copyright (C) 1994-2012 Lua.org, PUC-Rio (double int32)

Thanks in advance.

Hi @trendy

I have set all the log level but I am getting same logs in every log level. There is no difference in logs while setting "error log level" or "critical log level" or anything else.

Thanks in advance.

Old and unsupported.

Did you lower ALL log levels?

Name Type Required Default Description
conloglevel integer no 7 Number between 1-8. The maximum log level for kernel messages to be logged to the console. Only messages with a level lower than this will be printed to the console. Higher level messages have lower log level number. Highest level messages are ones with log level 0. If you want more verbose messages in console put conloglevel to 8 if you want less messages lower conloglevel to 4 or even less. Note that in releases 17.x and later this and similar parameters may have no effect.
cronloglevel integer no 5 The minimum level for cron messages to be logged to syslog. 0 will print all debug messages, 8 will log command executions, and 9 or higher will only log error messages.
klogconloglevel integer no 7 The maximum log level for kernel messages to be logged to the console. Only messages with a level lower than this will be printed to the console. Identical to conloglevel and will override it.

I concur.

Hi @trendy

So in this version, we cannot solve this issue?

It often depends on the particular service which uses system log.
Some services have their own log verbosity options.

As @vgaetera mentioned, it could be because of the individual settings of each service, so this could give you a hint to experiment.
On the other hand nobody in here runs this version to try to reproduce the issue and developers won't fix any bug found, since that version is unsupported.
So basically there is no reason to waste resources.
Is it not possible to upgrade to a newer version?

1 Like

Sorry, not possible.

I have one doubt If it is not working then why we are showing it in the GUI?
So there is no need to show it in on GUI?
For reference, Please find the attached image.

syslog_not_working

Submit a bug report if you think this is a bug.

2 Likes

I understand to what you are referring to.
Just because it doesn't seem to work for you, doesn't mean it doesn't work at all and should be removed from Luci.
If you have solid proof that it is not working in a supported version, go ahead and open a bug ticket.

2 Likes

I am not saying that it is not working in supported version.
I was just asking that if it is not working in this version(15.05.1) then we can remove it from GUI in my case not all over luci code for everyone.

thanks for your support.

What part of “unsupported version” are you not understanding?

The fix is upgrade to a current version, which you won’t do for an unspecified reason.

1 Like

I'm also quite lost:

  • Why are you showing a picture of the GUI, when I thought the setting you desired - has to be made on the command line?
  • This is for cronloglevel, you need conloglevel or klogconloglevel
  • If you tested anyway, why are your settings blank?
  • Can you post /etc/config/system ?
  • If you want to use this setting instead, did you setup a device to receive the syslogs??
  • Did you read the instructions at the Wiki?

https://openwrt.org/docs/guide-user/base-system/system_configuration

1 Like

Before the discussion escalates any further, had anybody checked the source code...

To my knowledge, the support for log level filtering has never implemented to the new OpenWrt log utility that was introduced in 2013 and is in all releases since then.
https://git.openwrt.org/?p=project/ubox.git;a=tree;f=log;h=02042a176879802e1190d7bb09b04c2715442aa3;hb=HEAD

https://git.openwrt.org/?p=project/ubox.git;a=history;f=log;h=02042a176879802e1190d7bb09b04c2715442aa3;hb=HEAD

The log daemon stores the message priority info but logread has no support for filtering that. The daemon itself has only one option, which sets the log buffer size.

Wiki has outdated info (and a note that support for that has maybe been removed in 2017)

2 Likes