[Geoserver-devel] Cannot view logs when using JDBCStore

Hello,

I was testing JDBCStore on GeoServer 2.9.1 (CentOS 6.6, Tomcat8, PostgreSQL), and I have ran into a problem - once I have JDBCStore set up, I can not see the logs past the point where JDBCStore was initialized.

The last to lines in the geoserver.log file in the old data dir are:

2016-09-12 22:05:19,315 INFO [geoserver.jdbcloader] - JDBCConfig using JDBC DataSource Optional.of(jdbc:postgresql://localhost:5432/gsdata)
2016-09-12 22:05:19,560 INFO [jdbcstore.internal] - Initializing Resource Store Database.

If I do a WMS request, then look at the GeoServer log from the geoserver UI, these are still the last to lines in the logs.

If I do “curl -v -u admin:geoserver -XGET http://localhost:8080/geoserver/rest/resource/logs/geoserver.log”, these are still the last to lines in the logs.

I can look at the JDBCStore database and see that there is an entry for geoserver.log, and that it contains about 285 KB of hexadecimal text.

Is there anything obvious I might be doing wrong here to get this result?

Thanks,

Torben

Update: The expected log messages are visible in /var/log/tomcat8/catalina.out (among the other tomcat log messages), so GeoServer is still doing logging, it just seems to be going to (or looking at) the wrong place.

Torben

···

On Mon, Sep 12, 2016 at 3:59 PM, Torben Barsballe <tbarsballe@anonymised.com> wrote:

Hello,

I was testing JDBCStore on GeoServer 2.9.1 (CentOS 6.6, Tomcat8, PostgreSQL), and I have ran into a problem - once I have JDBCStore set up, I can not see the logs past the point where JDBCStore was initialized.

The last to lines in the geoserver.log file in the old data dir are:

2016-09-12 22:05:19,315 INFO [geoserver.jdbcloader] - JDBCConfig using JDBC DataSource Optional.of(jdbc:postgresql://localhost:5432/gsdata)
2016-09-12 22:05:19,560 INFO [jdbcstore.internal] - Initializing Resource Store Database.

If I do a WMS request, then look at the GeoServer log from the geoserver UI, these are still the last to lines in the logs.

If I do “curl -v -u admin:geoserver -XGET http://localhost:8080/geoserver/rest/resource/logs/geoserver.log”, these are still the last to lines in the logs.

I can look at the JDBCStore database and see that there is an entry for geoserver.log, and that it contains about 285 KB of hexadecimal text.

Is there anything obvious I might be doing wrong here to get this result?

Thanks,

Torben

HI Torben,
if I had to venture a guess, maybe it’s one bit too much migrated to the resource stuff? Log4j at the end of the day
can only log on the file system

Cheers
Andrea

···

On Tue, Sep 13, 2016 at 2:07 AM, Torben Barsballe <tbarsballe@anonymised.com> wrote:

Update: The expected log messages are visible in /var/log/tomcat8/catalina.out (among the other tomcat log messages), so GeoServer is still doing logging, it just seems to be going to (or looking at) the wrong place.

Torben



Geoserver-devel mailing list
Geoserver-devel@anonymised.com.366…sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

On Mon, Sep 12, 2016 at 3:59 PM, Torben Barsballe <tbarsballe@anonymised.com> wrote:

Hello,

I was testing JDBCStore on GeoServer 2.9.1 (CentOS 6.6, Tomcat8, PostgreSQL), and I have ran into a problem - once I have JDBCStore set up, I can not see the logs past the point where JDBCStore was initialized.

The last to lines in the geoserver.log file in the old data dir are:

2016-09-12 22:05:19,315 INFO [geoserver.jdbcloader] - JDBCConfig using JDBC DataSource Optional.of(jdbc:postgresql://localhost:5432/gsdata)
2016-09-12 22:05:19,560 INFO [jdbcstore.internal] - Initializing Resource Store Database.

If I do a WMS request, then look at the GeoServer log from the geoserver UI, these are still the last to lines in the logs.

If I do “curl -v -u admin:geoserver -XGET http://localhost:8080/geoserver/rest/resource/logs/geoserver.log”, these are still the last to lines in the logs.

I can look at the JDBCStore database and see that there is an entry for geoserver.log, and that it contains about 285 KB of hexadecimal text.

Is there anything obvious I might be doing wrong here to get this result?

Thanks,

Torben

==
GeoServer Professional Services from the experts! Visit
http://goo.gl/it488V for more information.

Ing. Andrea Aime

@geowolf
Technical Lead

GeoSolutions S.A.S.
Via di Montramito 3/A
55054 Massarosa (LU)
phone: +39 0584 962313

fax: +39 0584 1660272
mob: +39 339 8844549

http://www.geo-solutions.it
http://twitter.com/geosolutions_it

AVVERTENZE AI SENSI DEL D.Lgs. 196/2003

Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003.

The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy’s New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc.


On Tue, Sep 13, 2016 at 1:05 AM, Andrea Aime <andrea.aime@anonymised.com>
wrote:

HI Torben,
if I had to venture a guess, maybe it's one bit too much migrated to the
resource stuff? Log4j at the end of the day
can only log on the file system

That seems to make sense - Neils, you did most of the JDBCStore work, do

you have any insight into this behavior?

Thanks,

Torben

Hmm, strange. We always pass a file to the logger, irrespective of the used resource store. As Andrea said, there is no other way. But then I wonder what goes wrong after the store has been initialised. I'll have to debug.

Regards
Niels

On 14-09-16 18:36, Torben Barsballe wrote:

On Tue, Sep 13, 2016 at 1:05 AM, Andrea Aime <andrea.aime@anonymised.com <mailto:andrea.aime@anonymised.com>> wrote:

    HI Torben,
    if I had to venture a guess, maybe it's one bit too much migrated
    to the resource stuff? Log4j at the end of the day
    can only log on the file system

That seems to make sense - Neils, you did most of the JDBCStore work, do you have any insight into this behavior?

Thanks,

Torben

Torben,

Note that all of the logging goes to both the log file and the standard output. So the fact that you can find all the logs in catalina.out is perfectly normal.

The questions is only why it stops logging to the file. Looking into it.

Regards
Niels

On 15-09-16 11:33, Niels Charlier wrote:

Hmm, strange. We always pass a file to the logger, irrespective of the used resource store. As Andrea said, there is no other way. But then I wonder what goes wrong after the store has been initialised. I'll have to debug.

Regards
Niels

On 14-09-16 18:36, Torben Barsballe wrote:

On Tue, Sep 13, 2016 at 1:05 AM, Andrea Aime <andrea.aime@anonymised.com <mailto:andrea.aime@anonymised.com>> wrote:

    HI Torben,
    if I had to venture a guess, maybe it's one bit too much migrated
    to the resource stuff? Log4j at the end of the day
    can only log on the file system

That seems to make sense - Neils, you did most of the JDBCStore work, do you have any insight into this behavior?

Thanks,

Torben

------------------------------------------------------------------------------

_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Torben,

I have found the issue. The events are actually logged properly to the log file... but the problem is that afterwards the old log file is recached from the database!

The log-file should simply never be stored in the database. We have a system for that in place: we can configure ignored directories (like data, workspaces, jdbcstore, data...) which are not imported to begin with, and furthermore jdbcresourcestore forwards any request for them to the filesystembasedstore.

Unfortunately, we forgot to add the "logs" directory to the default config files. Also, I have found a bug that makes it possible to still read children of the ignored directories from the database. I have made a PR to resolve the issue: https://github.com/geoserver/geoserver/pull/1821

If this one is merged, and you make sure that logs is included in your jdbcstore config file, the problem will be resolved.

Regards
Niels

On 15-09-16 11:33, Niels Charlier wrote:

Hmm, strange. We always pass a file to the logger, irrespective of the used resource store. As Andrea said, there is no other way. But then I wonder what goes wrong after the store has been initialised. I'll have to debug.

Regards
Niels

On 14-09-16 18:36, Torben Barsballe wrote:

On Tue, Sep 13, 2016 at 1:05 AM, Andrea Aime <andrea.aime@anonymised.com <mailto:andrea.aime@anonymised.com>> wrote:

    HI Torben,
    if I had to venture a guess, maybe it's one bit too much migrated
    to the resource stuff? Log4j at the end of the day
    can only log on the file system

That seems to make sense - Neils, you did most of the JDBCStore work, do you have any insight into this behavior?

Thanks,

Torben

------------------------------------------------------------------------------

_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel