Geocoding failed - Empty address - GeocoderException

marc7 years ago

I've noticed since I've first had the server running the address look-up fails and a persisting WARNing appears in the tracker-server.log at various hours of the day, i.e.:

2017-04-09 22:46:27 WARN: Geocoding failed - Empty address - GeocoderException (JsonGeocoder:74 < ...)

Over a few days I've seen there's a vague pattern appearing. Availability of address look-up (without WARN) has been a few hours a day: (All times are GMT +1)

2017-04-10 02:08:31 to 2017-04-10 09:39:09 7.5 hrs
2017-04-11 02:08:06 to 2017-04-11 12:32:21 10.5 hrs
2017-04-13 09:43:04 to 2017-04-13 14:10:40 4.5 hrs

The rest of the time the address value has been blank and there have been WARN: Geocoding failed - Empty address - messages in the log.

It's almost as if the service is dependent on a user login somewhere.

Anton Tananaev7 years ago

The issue has nothing to do with Traccar server or user login. It's a problem with your reverse geocoder provider.

marc7 years ago

I don't have a reverse geocoder provider.

Maybe this is a geocoder that someone else is providing, for a few hours a day?

Anton Tananaev7 years ago

Well, you clearly do have a provider. Otherwise you won't be getting this error. By default Traccar is configured to use Google reverse geocoding API.

marc7 years ago

OK, since I had never chosen a provider I therefore have geocoding provider that comes with the default Traccar configuration (uses Google reverse geocoding API).

For me it only works a few hours per day, it still seems to me it only works while someone is logged in somewhere a few hours per day and he or she has a needed resource! I'll take a guess other Traccar server users with default configuration have been experiencing this warning too, with similar timing to me. (Times I quote are GMT +1).

Anton Tananaev7 years ago

Google geocoder has a daily limit, so when you exceed the limit, you start receiving an error. Then at some time of the day the quota is reset again.

marc7 years ago

In my case the problem was as you say: exceeding daily limit provided by Google's geodecoder (currently Traccar's default configuration).

To reduce the problem a lot I've added the following entries into the Traccar.xml configuration file.

<!--  replace google reverse geocoder    -->
    <entry key='geocoder.enable'>true</entry>
    <entry key='geocoder.type'>nominatim</entry>
    <entry key='geocoder.url'>https://locationiq.org/v1/reverse.php</entry>
    <entry key='geocoder.key'>*******************</entry>

Where ****************** represents my unique token to identify my requests, provided by Nominatim. http://locationiq.org/

franck kaze6 years ago

hi,
I have the same mistake, I read your conversation but I do not understand very well

marc6 years ago

I had forgot about this thread until reply alert appeared in my e-mail.

What was happening was this: In the default configuration for Traccar the address geocoder specified is a free resource provided by Google. This geocoder has a limit to the number requests it will process within a 24 hour period. When the daily limit is exceeded an empty address would be recorded for each request. Traccar will continue to record empty addresses until 24 hours have elapsed starting from the moment in time on that day that the Traccar server had first accessed the Google geocoder. A daily repeating pattern may be seen. At the same hour of the day, address geo-reports suddenly start working and then they stop again, some hours later.

The way I had reduced the problem was to specify an alternate geocoder that has a higher daily limit of requests than Google. i also ensured that the number of daily requests I made was less than their limit.

In a previous posting I have pasted the relevant part of the Traccar.xml configuration file to support this alternate geocoder. For this geocoder to work a unique user ID Token needs to be specified in the Traccar.xml configuration file. To get this token you need to create a user account on the Nominatim. http://locationiq.org/ website.