Zum Hauptinhalt springen
Sourcemaps sind eine Möglichkeit, Backtraces aus minifizierten oder transpilierten JavaScript-Dateien in ihre ursprüngliche Darstellung im Quellcode umzuwandeln. Eine Sourcemap enthält Daten über Ihren Front-end-Quellcode, mit denen wir den Funktionsnamen, die Zeilen- und Spaltennummer sowie den umgebenden Quellcode aus der im Backtrace angegebenen Position ableiten können.

Anforderungen

Damit Backtraces mit Sourcemaps angereichert werden können, muss jedes Sample mit einer revision Ihrer Anwendung versehen sein. Diese wird verwendet, um zu bestimmen, wann neue Sourcemaps abgerufen werden müssen, nachdem ein Deploy Ihren (Front-end-)Code geändert hat. Sie können die Revision in den Optionen angeben, die beim Erstellen einer neuen AppSignal-Instanz übergeben werden.
const appsignal = new Appsignal({
  key: "<your frontend API key>",
  revision: "<your current revision>",
});

Öffentliche Sourcemaps

Bei öffentlichen Sourcemaps wird die Sourcemap neben der JavaScript-Datei gehostet. Am Ende des minifizierten JavaScripts muss ein spezieller Kommentar stehen, der anzeigt, dass für den Code eine Sourcemap verfügbar ist.
//# sourceMappingURL=file.js.map
Die URL in diesem Kommentar kann eine vollständige URL zur Sourcemap oder ein relativer Pfad von der JavaScript-Datei zur Sourcemap sein. Wenn das minifizierte JS beispielsweise unter https://your.app/assets/application.min.js gehostet wird und der Sourcemap-Kommentar wie //# sourceMappingURL=application.min.js.map aussieht, versuchen wir, die Sourcemap unter der folgenden URL abzurufen: https://your.app/assets/application.min.js.map. Wir versuchen, öffentliche Sourcemaps zu cachen, können die minifizierte Version und die Sourcemap-Datei dennoch mehr als einmal anfordern.

Private Sourcemaps

Wir empfehlen in der Regel die Verwendung öffentlicher Sourcemaps, wann immer dies möglich ist, da Builds, die viele Sourcemaps erzeugen, lange dauern können, um über unseren privaten Sourcemap-Endpunkt hochgeladen zu werden. Falls dies jedoch nicht möglich ist, können Sie Ihre Sourcemaps auch über unseren Sourcemaps-API-Endpunkt hochladen.

Aufbewahrung

Sourcemaps werden über den revision-String zu einem „Release” gruppiert, und wir behalten das letzte „Release” bei, bis eine neue revision hochgeladen wird. Ältere „Releases” werden bis zu sechzig Tage lang aufbewahrt.