Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Nginx Logs and GEO map dashboard using Unraid

Featured Replies

Hello Unraid-community,

I try to set up a "Nginx Logs and GEO map dashboard" by gilbN using docker container lastest version of NGINX and geoip2influx on my unraid.

(https://github.com/gilbN/geoip2influx)

 

I add the following information in "nginx.conf":

http {
    geoip2 /usr/share/GeoIP/GeoLite2-City.mmdb {
    auto_reload 5m;
    $geoip2_data_country_iso_code country iso_code;
    $geoip2_data_city_name city names en;
    }

    log_format custom '$remote_addr - $remote_user [$time_local]'
           '"$request" $status $body_bytes_sent'
           '"$http_referer" $host "$http_user_agent"'
           '"$request_time" "$upstream_connect_time"'
           '"$geoip2_data_city_name" "$geoip2_data_country_iso_code"';

...

 

and when I start the NGINX container I get the following:

nginx: [emerg] MMDB_open("/config/geoip2db/GeoLite2-City.mmdb") failed - Error opening the specified MaxMind DB file in /config/nginx/nginx.conf:31

 

Unfortunately I cannot find any discussions about it.

May someone can support me how to solve the issue.

 

Adam

 

  • 1 year later...

I got it to work using the 'geoip2influx' template on CA. Additional dockers installed were Grafana and InfluxDB 1.8, also though the CA template. Adjusted the IP/Port to match the other containers. I did not modify the nginx.conf. I just pointed it at the existing access log (in my appdata/swag/logs/nginx, since I am using SWAG).

The download script failed due to permissions issues, but this was not logged. It only logged when it could not open the .mmdb. I got this error, which I fixed by going to Unraid > Tools > New Permissions to update the permissions.

xx/xx/xxxx xx:xx:xx| MainThread | g2i | ERROR | (run.<module>|line:34) | Error running parser. |'Traceback (most recent call last):\n File "/config/geoip2db/run.py", line 27, in <module>\n parser = LogParser()\n ^^^^^^^^^^^\n File "/config/geoip2db/geoip2influx/logparser.py", line 72, in init\n self.setup()\n File "/config/geoip2db/geoip2influx/logparser.py", line 76, in setup\n self.geoip_reader = Reader(self.geoip_path)\n ^^^^^^^^^^^^^^^^^^^^^^^\n File "/lsiopy/lib/python3.12/site-packages/geoip2/database.py", line 119, in init\n self._db_reader = maxminddb.open_database(fileish, mode)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File "/lsiopy/lib/python3.12/site-packages/maxminddb/__init__.py", line 80, in open_database\n return cast(Reader, _extension.Reader(database, mode))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nFileNotFoundError: [Errno 2] No such file or directory: b\'/config/geoip2db/GeoLite2-City.mmdb\''|

Result: The geo map works, which is all I needed. The nginx logs and a few other items were broken, but IP and Geolocation came through.

Hope that helps.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.