Sintaxis
newrelic_set_error_group_callback($callback)
Agrupe los errores con su propia función de devolución de llamada de huellas dactilares personalizada.
Requisitos
Versión del agente 10.12 o superior.
Descripción
Esta API permite al usuario registrar una función de devolución de llamada personalizada con el agente PHP que se llamará cuando la aplicación encuentre un error.
La devolución de llamada proporcionará dos matrices PHP del agente: una que contiene datos de transacción y otra que contiene datos de error.
Utilizando la información de contexto proporcionada, la devolución de llamada debe devolver una cadena no vacía basada en la lógica definida por el usuario que servirá como el nombre del grupo de errores que se muestra en la de usuario de la Errors Inbox UI.
Importante
- Cuando hay varias llamadas a esta función en una sola transacción, el agente PHP retiene la devolución de llamada únicamente de la última llamada.
- Las devoluciones de llamada se registran por solicitud. Esta API debe llamarse en una ruta de código que se garantice que se ejecutará para cada solicitud, o no se invocará la devolución de llamada.
- Se recomienda encarecidamente mantener la función de devolución de llamada lo más mínima posible. La devolución de llamadas que consume mucha CPU (como llamadas de base de datos) u otra lógica compleja afectará el rendimiento de su aplicación.
Parámetros
Esta API acepta una única devolución de llamada de tipo función como argumento. La devolución de llamada proporcionada debe aceptar 2 parámetros.
Parámetro API | Descripción |
---|---|
| Requerido. Proporcione una función de devolución de llamada que se registrará con el agente PHP. |
Parámetro de devolución de llamada | Descripción |
---|---|
| Requerido. Una matriz de datos de transacciones proporcionada a su devolución de llamada por el agente PHP. |
| Requerido. Una matriz de datos de error proporcionados a su devolución de llamada por el agente PHP. |
Pares principales de valor de matriz
$transaction_data
- Datos de transacción del agente PHP proporcionados a su devolución de llamada
Llave | Valor |
---|---|
"request_uri" | (cadena) Solicitar URI |
"camino" | (cadena) Ruta de archivo |
"método" | (cadena) Método HTTP ( |
"status_code" | (int) Código de estado HTTP ( |
$error_data
- Datos de error del agente PHP proporcionados a su devolución de llamada
Llave | Valor |
---|---|
"clase" | (cadena) Nombre de clase |
"mensaje" | (cadena) mensaje de error |
"archivo" | (cadena) Ruta de archivo |
"pila" | (cadena) Error JSON traza traza |
Importante
- No se garantiza que todas las claves contengan valores. Esto depende en gran medida de la aplicación del usuario y de la naturaleza del error.
- Las claves de matriz siempre se configurarán independientemente de si contienen valores vacíos o no.
Valores de retorno
La API devuelve true
si la devolución de llamada se registra correctamente; en caso contrario, false
.
Ejemplos
if (extension_loaded('newrelic')) { // Ensure PHP agent is available $callback = function(array $transaction_data, array $error_data) { $fingerprint = "";
// // Add custom code to parse array data //
// Example code if ($error_data["klass"] == "E_USER_ERROR") { $fingerprint = "USER ERROR"; };
return $fingerprint; // Non-empty string error group name };
newrelic_set_error_group_callback($callback);};