GeoStat is a Python script for parsing Nginx and Apache logs files and getting GEO data from incoming IP's in it. This script convert parsed data in to Json format and send it to InfluxDB database so you can use it to build some nice Grafana dashboards for example. It runs as service by SystemD and parse log in "tailf" style.
- Having an external **settings.ini** for comfortable changing parameters.
Json format that script send to InfluxDB looks like:
```
[
{
'fields': {
'count': 1
},
'measurement': 'geo_cube',
'tags': {
'geohash': 'u8mb76rpv69r',
'country_code': 'UA'
}
}
]
```
As you can see there is two tags field, so you can build dashboards using geohash or just country code, count for any metric equal 1. This script don't parse log file from begining but parse it line by line after runing. So you can build dashboards using "count" of geohashes or country codes after some time will pass.
2) CD into dir and run **install.sh**, it will ask you to set a properly settings.ini parameters, like Nginx **access.log** path, and InfluxDB settings.
3) After script will finished you only need to start SystemD service with **systemctl start geostat.service**.