Das Shellskript zählt regelmäßig den PV von access.log unter Nginx und sendet ihn an die API und speichert ihn in der Datenbank

Das Shellskript zählt regelmäßig den PV von access.log unter Nginx und sendet ihn an die API und speichert ihn in der Datenbank

1. Statistiken zu PV und IP

Zählen Sie die PV (Page Views) des Tages

cat access.log | sed -n /`date "+%d\/%b\/%Y"`/p |wc -l

Zählen Sie den PV eines bestimmten Tages

cat access.log | sed -n '/20\/Sep\/2018/p' | wc -l

Sehen Sie sich die Top 10 der IP-Adressen mit den meisten Besuchen im Protokoll an

cat access.log.1 |cut -d ' ' -f 1 | sort |uniq -c | sort -nr | awk '{print $0 }' | head -n 10

Sehen Sie sich die Top 10 IP-Adressen mit mehr als 1.000 Besuchen im Protokoll an

cat access.log.1 |cut -d ' ' -f 1 | sort |uniq -c | sort -nr | awk '{if($1>1000) print $0 }' | head -n 10

2. curl sendet Daten

Senden einer GET-Anfrage mit curl

curl http://127.0.0.1:8080/login?admin&passwd=12345678

Senden einer POST-Anfrage mit curl

curl -d "Benutzer=admin&passwd=12345678" http://127.0.0.1:8080/login

Senden Sie JSON-Daten mit curl

curl -H "Inhaltstyp:application/json" -X POST -d '{"Benutzer": "admin", "passwd":"12345678"}' http://127.0.0.1:8000/login

Senden einer dynamischen Parameter-POST-Anforderung mit curl

curl -i -X ​​​​POST -H "'Inhaltstyp':'application/json'" -d '{"ATime":"'$atime'","BTime":"'$btime'"}' $url
curl -i -X ​​​​POST -H "'Inhaltstyp':'application/json'" -d '{"ATime":"'${atime}'","BTime":"'{$btime}'"}' ${url}

3. Shell-Skript-Statistiken und Senden

#!/bin/bash
log_path=/var/log/nginx/access.log
Domäne="http://127.0.0.1:8080/data/count"
log_date = `Datum "+%d/%b/%Y"`
echo ${log_date}
total_visit=`Katze ${log_path} | grep $log_date|wc -l`
curl -d "Anzahl=${total_visit}" ${Domain}
echo $gesamtbesuch

4. Der Server akzeptiert und speichert es in der Datenbank

@RequestMapping(Wert = "/Anzahl")
  öffentliche void-Anzahl (Zeichenfolge-Anzahl) {
  //Geschäftscode}

Zusammenfassen

Das Obige ist das Shell-Skript, das ich Ihnen vorgestellt habe. Es zählt regelmäßig den PV von access.log unter Nginx und sendet ihn an die API, um ihn in der Datenbank zu speichern. Ich hoffe, es wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • Shell-Skript Nginx-Automatisierungsskript
  • Beispielcode zum Aufteilen von Nginx-Protokollen mithilfe eines Shell-Skripts
  • Shell-Skript zum stapelweisen Löschen des Nginx-Cache
  • Shell-Skript zum Schneiden von Nginx-Protokollen
  • Detaillierte Erklärung zum Einfügen gängiger Nginx-Befehle in Shell-Skripte

<<:  Detailliertes Tutorial zur Installation und Konfiguration von MySql 5.7.17 winx64

>>:  Natives JS implementiert ein Minesweeper-Spiel mit benutzerdefiniertem Schwierigkeitsgrad

Artikel empfehlen

Vollbild-Drag-Upload-Komponente basierend auf Vue3

In diesem Artikel wird hauptsächlich die Vollbild...

Verwendung des Linux-Befehls usermod

1. Befehlseinführung Der Befehl usermod (user mod...

Einführung in die Verwendung gängiger XHTML-Tags

Es gibt viele Tags in XHTML, aber nur wenige werd...

JavaScript realisiert die Generierung und Überprüfung von Zufallscodes

Die Generierung und Überprüfung von Zufallscodes ...

Implementierungsfallcodeanalyse für dynamische und statische Trennung von Nginx

Trennung von statischer und dynamischer Dynamisch...