how to disable log in spring data neo4j

不问归期 提交于 2020-01-03 09:06:13

问题


I am getting unwanted query log from spring neo4j like following

25-08-2018 23:47:07.597 [restartedMain] INFO  o.n.o.d.bolt.request.BoltRequest.executeRequest - 
Request: MATCH (n:`OntoCategory`) WHERE n.`name` = { `name_0` } WITH n RETURN n,[ [ (n)-[r_h1:`HasSynonym`]->(o1:`OntoSynonyms`) | [ r_h1, o1 ] ] ], ID(n) with params {name_0=Breakfast Items}
25-08-2018 23:47:07.610 [restartedMain] INFO  o.n.o.d.bolt.request.BoltRequest.executeRequest -

I am using following logging properties in my application.properties

Is there anything I've missed to add. I'm using spring boot version 2.0.3

logging.level.root=info
logging.path=path
logging.file=${logging.path}/log.log
logging.pattern.file=%d{dd-MM-yyyy HH:mm:ss.SSS} [%thread] %-5level %logger{36}.%M - %msg%n
logging.pattern.console=%d{dd-MM-yyyy HH:mm:ss.SSS} [%thread] %-5level %logger{36}.%M - %n%highlight%msg%n

Following two log properties are added from following post which doesn't change anything

log4j.category.org.springframework.data.neo4j=DEBUG
log4j.category.org.springframework.data.neo4j.support.query=DEBUG`

回答1:


The logging of the cypher query is done by BoltRequest class in neo4j-ogm. So that's where you should be changing the logging level like the following (to keep other logging configuration unaffected):

logging.level.org.neo4j.ogm.drivers.bolt.request.BoltRequest=WARN

Note, however that, as the logging level in this class has been changed very recently according to your request (per #530, by commit f37a78e - logging level of cypher queries downgraded to DEBUG), if you upgrade your SDN installation in your project, you may just be automatically getting rid of the query logs w/o making this adjustment to logging configuration

(I currently have neo4g-ogm-bolt-driver-3.1.4.jar in my project, and I don't get the queries logged).




回答2:


log4j.category.org.springframework.data.neo4j.support.query=DEBUG

This entry in the log configuration, logs the query. To avoid logging query to the log files remove this entry.




回答3:


If you set the log4j log level to DEBUG, then all log messages at DEBUG level and above (which includes INFO) will be logged.

To prevent INFO level messages from being logged, you should set the log level to WARN (or an even higher level).




回答4:


Since you have this configuration :

logging.level.root=info

The root log level will be info, but if another level is different, it will override it for this log.

So, to have the following behaviour :

  • Neo4j log will be displayed if its level is WARN or higher (so, no request log)
  • Every other log in your app will be displayed if its level is INFO or higher

What you want is to do this :

logging.level.root=info
log4j.category.org.springframework.data.neo4j=WARN
log4j.category.org.springframework.data.neo4j.support.query=WARN



回答5:


By adding this line in application.properties queries is not logging in console.Its working

logging.level.org.neo4j.ogm.drivers=OFF


来源:https://stackoverflow.com/questions/52019947/how-to-disable-log-in-spring-data-neo4j

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!