Sie können Funktionsparameter für Sprachen speichern, die durch unsere OpenTelemetry-Beta unterstützt werden.
Das Speichern von Funktionsparametern ermöglicht es, die Parameter anzuzeigen, mit denen Background-Jobs oder Skripte gestartet wurden.
Es ist nicht dazu gedacht, die Parameter für jeden Funktionsaufruf in einem Trace zu speichern, nur die Parameter der obersten Ebene.
Funktionsparameter-Daten können benutzeridentifizierbare Informationen wie E-Mail-Adressen, API-Tokens usw. enthalten.
Um die sensiblen Daten Ihrer Anwendung zu schützen, müssen Sie sicherstellen, dass diese Daten herausgefiltert werden, bevor sie an die AppSignal-Server gesendet werden.
Auf diese Weise gibt Ihre Anwendung keine sensiblen Daten preis.
Ihre Anwendung sollte keine personenidentifizierbaren Informationen (wie
Personennamen, E-Mail-Adressen, Passwörter usw.) sammeln. Verwenden Sie die in
diesem Leitfaden beschriebenen Tools, um diese Daten zu begrenzen und herauszufiltern.
Funktionsparameter-Filterung
Die Funktionsparameter-Filterung funktioniert mit einer Denylist: eine Liste von Schlüsseln, die herausgefiltert und nicht gesendet werden sollen.
Sie können eine Option “Funktionsparameter filtern” mit einer Liste der zu filternden Parameter-Schlüssel setzen.
Werte von Parametern, die Sie zum Herausfiltern konfiguriert haben, werden durch einen [FILTERED]-Wert ersetzt.
Auf diese Weise enthält die Liste der Parameter in den App-Daten auf AppSignal.com weiterhin den Parameter-Schlüssel, aber nicht den Wert, sodass Sie immer noch die Sichtbarkeit haben, dass ein Wert mit potenziell sensiblen Daten gefiltert wurde, bevor er an AppSignal gesendet wurde.
Beispiel
Zum Beispiel führt eine Anwendung mit dieser AppSignal-Konfiguration:
filter_function_parameters: ["secret_key"]
Zu dieser Ansicht für die Parameter eines Traces auf AppSignal.com:
{
"secret_key": "[FILTERED]"
}
Dieser Leitfaden zeigt Ihnen, wie Sie die Funktionsparameter-Filterungs-Denylist Ihrer Anwendung basierend auf der von Ihrer Anwendung verwendeten Sprache konfigurieren:
Verwenden Sie die filter_function_parameters-Denylist für die Funktionsparameter-Filterung. Setzen Sie die send_function_parameters-Option auf true, um keine Funktionsparameter zu senden.
Weitere Informationen zur Konfiguration von OpenTelemetry für Go-Apps finden Sie auf der Go-Konfigurationsseite.
res := resource.NewWithAttributes(
attribute.StringSlice("appsignal.config.filter_function_parameters", []string{"api_token", "secret"}),
)
Java
Verwenden Sie die filter_function_parameters-Denylist für die Funktionsparameter-Filterung. Setzen Sie die send_function_parameters-Option auf true, um keine Funktionsparameter zu senden.
Weitere Informationen zur Konfiguration von OpenTelemetry für Java-Apps finden Sie auf der Java-Konfigurationsseite.
function encode() {
echo -n "$@" | sed 's/,/%2C/g'
}
export OTEL_RESOURCE_ATTRIBUTES="\
appsignal.config.filter_function_parameters=$(encode "api_token,secret"),\
..."
PHP
Verwenden Sie die filter_function_parameters-Denylist für die Funktionsparameter-Filterung. Setzen Sie die send_function_parameters-Option auf true, um keine Funktionsparameter zu senden.
Weitere Informationen zur Konfiguration von AppSignal für PHP finden Sie auf der PHP-Konfigurationsseite.
return [
'filter_function_parameters' => ['api_token', 'secret'],
// ... andere Optionen
];