Um die Leistung von Java-Funktionen zu überwachen und Warnungen festzulegen, befolgen Sie diese Schritte: Fügen Sie die erforderlichen Abhängigkeiten hinzu. Fügen Sie in der Funktionsklasse Überwachungs- und Warncode hinzu. Stellen Sie die Funktion bereit und stellen Sie sicher, dass die Umgebungsvariable FUNCTIONS_SIGNATURE_TYPE festgelegt ist. Erstellen Sie im Google Cloud Monitoring-Dashboard eine Benachrichtigungsregel mit benutzerdefinierten Metrikschwellenwerten, die Benachrichtigungen auslöst, wenn die Ausführungszeiten die Erwartungen überschreiten.
So überwachen Sie die Leistung von Java-Funktionen und werden benachrichtigt, wenn Probleme auftreten
Einführung
Die Überwachung der Leistung von Java-Funktionen ist entscheidend, um die Verfügbarkeit und Leistung Ihrer Anwendung sicherzustellen. Durch das Festlegen von Warnungen können Sie rechtzeitig benachrichtigt werden, wenn Schlüsselindikatoren abnormal erscheinen, sodass Sie rechtzeitig Maßnahmen ergreifen können. In diesem Artikel erfahren Sie, wie Sie mit der Google Cloud Functions Monitoring API die Leistung von Java-Funktionen überwachen und Warnungen festlegen.
Voraussetzungen
1. Erstellen Sie eine Java-Funktion Hinzufügen die folgenden Abhängigkeiten:
<dependency> <groupId>com.google.cloud</groupId> <artifactId>functions-framework-java</artifactId> <version>1.0.35</version> </dependency> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-functions</artifactId> <version>3.3.0</version> </dependency>
import com.google.cloud.functions.HttpFunction; import com.google.cloud.functions.HttpRequest; import com.google.cloud.functions.HttpResponse; import java.io.IOException; import java.io.PrintWriter; public class MyFunction implements HttpFunction { @Override public void service(HttpRequest request, HttpResponse response) throws IOException { // 您的函数逻辑 PrintWriter writer = response.getWriter(); writer.print("Hello World!"); } }
2. Fügen Sie Überwachung und Warnungen
in pom.xml
oder build.gradle</ code> hinzu Fügen Sie in der Datei die folgende Abhängigkeit hinzu: </strong><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:xml;toolbar:false;'><dependency>
<groupId>io.opencensus</groupId>
<artifactId>opencensus-exporter-stats-cloud</artifactId>
<version>0.16.0</version>
</dependency></pre><div class="contentsignin">Nach dem Login kopieren</div></div></p>Fügen Sie in der Funktionsklasse den Überwachungs- und Alarmcode hinzu: <p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:java;toolbar:false;'>import io.opencensus.exporter.stats.stackdriver.StackdriverStatsExporter;
import io.opencensus.stats.Stats;
import io.opencensus.stats.ViewManager;
import java.util.List;
public class MyFunction implements HttpFunction {
private static final StackdriverStatsExporter exporter =
StackdriverStatsExporter.createAndRegister();
private static final List<String> MONITORED_FUNCTIONS = List.of("http_server", "fn");
// Add a shutdown hook to stop the exporter at the end of the app lifecycle.
// This is a best-effort attempt to ensure that metrics are flushed before termination.
public static void init() {
Runtime.getRuntime().addShutdownHook(exporter::shutdown);
}
@Override
public void service(HttpRequest request, HttpResponse response)
throws IOException {
// Monitor the execution of your function using Stackdriver.
// You can enable monitoring by setting the FUNCTIONS_SIGNATURE_TYPE environment
// variable as shown at https://cloud.google.com/functions/docs/monitoring/logging.
ViewManager viewManager = Stats.getViewManager();
// We only need to register the default views once per JVM.
// However, you can register views more than once, and the duplicate registrations
// will be ignored after the first time. Alternatively, you can configure all of the
// default views with a parameter.
viewManager.registerAllViews();
}
}</pre><div class="contentsignin">Nach dem Login kopieren</div></div><code>pom.xml
或 build.gradle
文件中,添加以下依赖项:
gcloud functions deploy my-function \ --entry-point MyFunction \ --runtime java11 \ --trigger-http
在函数类中,添加监控和警报代码:
custom.googleapis.com/cloud_function/http/latency
3. 部署函数
部署您的函数,确保已设置 FUNCTIONS_SIGNATURE_TYPE
Stellen Sie Ihre Funktion bereit und stellen Sie sicher, dass FUNCTIONS_SIGNATURE_TYPE
festgelegt ist > Umgebungsvariablen.
Regel erstellen: Klicken Sie auf die Schaltfläche „Regel erstellen“.
Einen Kanal einrichten: Wählen Sie einen Benachrichtigungskanal wie E-Mail oder Slack.
Praktischer FallSie können beispielsweise einen Alarm einstellen, der ausgelöst wird, wenn die Ausführungszeit der Funktion 1 Sekunde überschreitet. Auf diese Weise können Sie sofort benachrichtigt werden, wenn es Probleme mit der Funktionsleistung gibt, sodass Sie Maßnahmen zur Untersuchung und Abhilfe ergreifen können.
Nächste SchritteDas obige ist der detaillierte Inhalt vonWie kann ich die Leistung einer Java-Funktion überwachen und Benachrichtigungen erhalten, wenn Probleme auftreten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!