Zum Hauptinhalt springen
Wenn keine Daten von Ihrer App an AppSignal gemeldet werden, prüfen Sie bitte die folgenden häufigen Probleme.

Es werden keine Daten gemeldet

Der OpenTelemetry-Export-Endpunkt ist falsch konfiguriert

OpenTelemetry-Apps exportieren Daten standardmäßig an http://localhost:4318. AppSignal erfordert einen benutzerdefinierten Endpunkt, um Daten an den AppSignal Collector zu senden. Der AppSignal Collector kann als gehosteter oder selbst gehosteter Typ ausgeführt werden. Lesen Sie unsere Seite Gehostet vs. selbst gehostet für weitere Informationen über den Unterschied zwischen diesen Collector-Typen. Folgen Sie der Hilfe für den von Ihrer Anwendung verwendeten Collector-Typ unten:

Gehosteter Collector

Stellen Sie bei Verwendung des gehosteten Collectors sicher, dass Sie die im App-hinzufügen-Assistenten angezeigte URL des Collectors als Endpunkt des OpenTelemetry-Exporters verwenden. Wählen Sie im App-hinzufügen-Assistenten die Sprache aus, die Ihre Anwendung verwendet und die AppSignal für OpenTelemetry unterstützt, oder verwenden Sie die Option „More languages”, um den Endpunkt des gehosteten Collectors anzuzeigen. Er kann sich in einem Codebeispiel befinden und einer Variablen namens endpoint zugewiesen sein. Das Format des gehosteten Collectors ist wie folgt:
  • https://COLLECTOR-ID.REGION.appsignal-collector.net
Der Exporter-Endpunkt muss entweder über die Umgebungsvariable OTEL_EXPORTER_OTLP_ENDPOINT oder in der App selbst konfiguriert werden, wo OpenTelemetry konfiguriert wird. Weitere Details finden Sie in der sprachspezifischen Installationsanleitung, die Ihre Anwendung verwendet.

Selbst gehosteter Collector

Bei Verwendung eines selbst gehosteten Collectors muss der OpenTelemetry-Exporter-Endpunkt auf den Ort verweisen, an dem der Collector ausgeführt wird. Wenn der Collector auf demselben Host ausgeführt wird (installiert über das Linux-Paket), ist der Hostname localhost. Wenn der Collector in einem Docker-Container oder Kubernetes-Cluster läuft, kann der Hostname je nach angegebenem Service-Namen variieren. Wir empfehlen, den Dienst appsignal zu nennen und den Endpunkt des Exporters so zu aktualisieren, dass er dem Hostnamen appsignal entspricht.
  • Hostname, mehrere Werte sind möglich:
  • Beispiele:
    • http://localhost:8099 oder http://appsignal:8099 unter Docker.
Bei einigen Sprachen sollte im OpenTelemetry-SDK das URI-Schema (http/https) nicht als Teil des OpenTelemetry-Exporter-Endpunkts gesetzt werden. Bitte beachten Sie die Installationsanleitung für die Sprache, die Ihre Anwendung verwendet. Der Exporter-Endpunkt muss entweder über die Umgebungsvariable OTEL_EXPORTER_OTLP_ENDPOINT oder in der App selbst konfiguriert werden, wo OpenTelemetry konfiguriert wird. Weitere Details finden Sie in der sprachspezifischen Installationsanleitung, die Ihre Anwendung verwendet.

Exporter-Endpunkte

Einige OpenTelemetry-Exporter müssen möglicherweise pro OpenTelemetry-Datentyp für bestimmte Endpunkte konfiguriert werden. Wenn Sie einen Trace-/Span-Exporter konfigurieren, verwenden Sie den Trace-Endpunkt, für Metriken den Metrik-Endpunkt usw. Diese Endpunkte am AppSignal Collector sind:
  • Trace-Daten:
    • /v1/traces oder,
    • /v1/traces
  • Metrikdaten:
    • /v1/metrics oder,
    • /v1/metrics
  • Log-Daten:
    • /v1/logs oder,
    • /v1/logs

Das OpenTelemetry-Export-Protokoll ist nicht auf http/protobuf gesetzt

Der AppSignal Collector unterstützt nur das OpenTelemetry Protocol (OTLP) über HTTP mit Protobuf-Encoding. Erforderliche Konfiguration:
  • Protokollformat: http/protobuf
Wenn OpenTelemetry in Ihrer App gRPC oder JSON als Exportformat verwendet, aktualisieren Sie die Konfiguration, um das HTTP/Protobuf-Format zu verwenden. Um das Exporter-Protokollformat zu konfigurieren, folgen Sie den Installationsschritten für die Sprache, die Ihre Anwendung verwendet.

Der selbst gehostete Collector läuft nicht oder ist nicht erreichbar

Um Daten an AppSignal zu senden, muss der selbst gehostete Collector korrekt gestartet sein. In den Anwendungsprotokollen sichtbare Exportfehler können darauf hinweisen, dass der Collector nicht läuft. Um zu überprüfen, ob er läuft, sehen Sie sich die Collector-Protokolle an. Die Collector-Protokolle finden Sie in: Wenn der Collector läuft, aber nicht erreicht werden kann, überprüfen Sie die internen Netzwerkeinstellungen, um zu sehen, ob die Anwendung den Host des Collectors erreichen kann.

Fehlende oder unvollständige Daten gemeldet

Wenn Sie nur einige Daten sehen und weitere Daten darüber fehlen, was Ihre Anwendung tut, liegt dies wahrscheinlich an fehlender OpenTelemetry-Instrumentierung in Ihrer Anwendung. OpenTelemetry instrumentiert nicht automatisch alles von Haus aus. Um Daten von bestimmten Frameworks und Bibliotheken zu sammeln, müssen Sie zusätzliche Instrumentierungsbibliotheken installieren und konfigurieren. Um mehr Daten zu melden, installieren Sie die entsprechenden OpenTelemetry-Instrumentierungsbibliotheken für die in Ihrer Anwendung verwendeten Bibliotheken. Lesen Sie die Anleitung Zusätzliche OpenTelemetry-Instrumentierung hinzufügen für die Sprache Ihrer Anwendung, um zu erfahren, wie Sie weitere Instrumentierungspakete installieren.