[PYTHON] Detaillierte Erklärung Überwachung und Leistungsverbesserung mit NewRelic-Part 2

Überblick

Fortsetzung der vorherigen Sitzung. Ich habe den Titel geändert. Teil 2, aber die Fallnummer beginnt mit 1.

Detaillierte Erklärung: Überwachung und Leistungsverbesserung mit NewRelic-Teil 1 Detaillierte Erklärung: Überwachung und Leistungsverbesserung mit NewRelic-Teil 2

Fall 1: Ich möchte wissen, ob die Anwendung ordnungsgemäß funktioniert

Es ist eine Überlebensbestätigung. Wenn Sie versuchen, es richtig zu machen, können Sie eine Anfrage an eine Reihe von APIs stellen und die Antwort überprüfen. In der Realität ist dies jedoch nicht erforderlich, und ich denke, Sie können zur Bestätigung des Überlebens auf eine API werfen, ob die Anwendung ausgeführt wird oder nicht, und prüfen, ob die Antwort korrekt ist. Zu diesem Zeitpunkt ist es wichtig, welche Art von API wichtig ist. Anstatt nur Echo wie der Echo-Server zurückzugeben, ist es gut, eine leichte Abfrage an verbundene Dienste wie MySQL und Redis zu stellen. Auf diese Weise können Sie auch gleichzeitig die Existenz von MySQL und Redis überprüfen.

In New Relic kann dies wie folgt eingestellt werden.

ping_1.png

Nach dem Einstellen sehen Sie das Ergebnis in Verfügbarkeit.

ping_2.png

Sie können auch Benachrichtigungsmail usw. festlegen. Wenn Sie diese festlegen, können Sie schnell feststellen, wann das System ausfällt. Für das Team, dem Sie angehören, werden Sie im Chat benachrichtigt, wenn die Entwicklungsumgebung nicht mehr erreichbar ist, sodass Sie sie schnell bemerken und korrigieren können.

Fall 2: Ich möchte die Reaktionszeit aus aller Welt wissen

Die Apps, die weltweit eingeführt werden, hängen von der Reaktionszeit jedes Landes ab. In New Relic können Sie die Antwortzeit in den folgenden Bereichen überprüfen, indem Sie SYNTHETICS einstellen. Es wird in regelmäßigen Abständen gesendet.

synthetics_1.png synthetics_2.png

Fall 3: Ich möchte die Spieler-ID wissen, wenn eine Ausnahme auftritt

In NewRelic wird die auftretende Ausnahme als Fehler angezeigt, enthält jedoch keine anwendungsspezifischen Informationen, es sei denn, Sie legen sie selbst fest. Wenn beispielsweise etwas, das einen Benutzer wie player_id identifizieren kann, mit einer Ausnahme aufgezeichnet wird, können Sie auf dem Verwaltungsbildschirm der Anwendung nach diesem Benutzer suchen und den detaillierteren Status der Ausnahme ermitteln.

Wenn Sie es mit New Relic richtig eingestellt haben, sieht es wie folgt aus.

custome_attribute.png

Die Einstellungen für den Quellcode sind wie folgt. Da es sich um einen gängigen Prozess handelt, fühlen Sie sich anscheinend gut, wenn Sie ihn in den Dekorateur legen oder die Vorverarbeitung anzeigen. (Geschichte in Django)

Fügen Sie player_id zu #newrelic hinzu newrelic.agent.add_custom_parameter('player_id', player.id)

Fall 4: Ich habe eine API verbessert, um zu sehen, ob sie tatsächlich schneller ist

Wenn es sich verbessert, ist es bedeutungslos, es sei denn, Sie messen es und prüfen, ob es tatsächlich schneller ist. Sie können diesen Bereich auch mit New Relic überprüfen.

historical_performance.png

Fazit

Letztes Mal habe ich gesagt, dass ich Key Transactions, X-Ray, einführen möchte, aber wenn ich andere eingeführt habe, ist die Zeit abgelaufen, also werde ich es beim nächsten Mal tun. Nächstes Mal werde ich Key Transactions, X-Ray von Anfang an vorstellen.

Recommended Posts

Detaillierte Erklärung Überwachung und Leistungsverbesserung mit NewRelic-Part 2
Detaillierte Erklärung Überwachung und Leistungsverbesserung mit NewRelic-Teil 1
Detaillierte Erklärung Leistungsverbesserung mit NewRelic-Part 3
Mit Monitoring gewinnen
Bemühungen zur Leistungsverbesserung