Ingesta de logs personalizados desde el servicio OCI Logging mediante el conector de servicio
Si tiene logs personalizados en el servicio OCI Logging que desea ingerir en Oracle Log Analytics con el fin de obtener estadísticas de log y análisis, complete los pasos que se muestran aquí.
Para las aplicaciones esenciales que requieren una ingesta de logs de latencia baja y alertas de tiempo de ingestión, Oracle recomienda utilizar Oracle Management Agent, que está instalado por defecto en todas las instancias de OCI.
Si desea recopilar logs históricos, utilice Oracle Management Agent porque el conector de servicio no soporta la recopilación de logs históricos.
Además, después de instalar el agente de gestión, complete los pasos del 1 al 5 que se muestran a continuación para comenzar a recopilar los logs en Oracle Log Analytics.
Para obtener más información sobre la ingesta de logs desde otros servicios de OCI con el conector de servicio, consulte Ingesta de logs desde otros servicios de OCI con el conector de servicio.
Pasos para recopilar logs personalizados del servicio OCI Logging mediante el conector de servicio:
-
Proporcionar permiso para acceder y recopilar logs del servicio OCI Logging. Consulte Permitir recopilación de logs desde el servicio OCI Logging.
-
Identifique o cree el compartimento y el grupo de logs de Log Analytics en los que se deben recopilar los logs.
-
En el registro de log del servicio OCI Logging, observe el tipo de evento correspondiente a la clave type, por ejemplo,
com.oraclecloud.logging.custom.kube_system_namespace. El valor de la clave se utilizará más adelante para crear el origen de log. A continuación, se muestra un ejemplo de un registro de log del servicio OCI Logging:{ "datetime": 1652152576897, "logContent": { "data": { "message": "2022-05-10T03:16:16.161346406+00:00 stderr F time=\"2022-05-10T03:16:16Z\" level=error msg=\"tkw network request proxied\" error=EOF", "tailed_path": "/var/log/pods/kube-system_proxymux-client-aaaa/proxymux-client/0.log" }, "id": "id112233", "oracle": { "compartmentid": "ocid1.compartment.oc1..a....", "ingestedtime": "2022-05-10T03:17:25.628Z", "instanceid": "ocid1.instance.oc1.phx.a....", "loggroupid": "ocid1.loggroup.oc1.phx.a....", "logid": "ocid1.log.oc1.phx.a....", "tenantid": "ocid1.tenancy.oc1..a...." }, "source": "oke-source", "specversion": "1.0", "subject": "/var/log/pods/kube-system_proxymux-client-aaaa/proxymux-client/0.log", "time": "2022-05-10T03:16:16.897Z", "type": "com.oraclecloud.logging.custom.kube_system_namespace" } }En el ejemplo anterior del tipo de evento,
com.oraclecloud.logging.custom.es constante para los logs personalizados. La parte restante del valor, por ejemplo,kube_system_namespacevariará según el tipo de logs. -
Cree un analizador de JSON para analizar los logs personalizados.
Nota
Asegúrese de que el analizador sea del tipo JSON para ingerir logs del conector de servicio. No se admiten otros formatos de analizador.Para el contenido de log de ejemplo mostrado anteriormente, Log Analytics solo recibe el valor del atributo
logContent, como se muestra a continuación:{ "data": { "message": "2022-05-10T03:16:16.161346406+00:00 stderr F time=\"2022-05-10T03:16:16Z\" level=error msg=\"tkw network request proxied\" error=EOF", "tailed_path": "/var/log/pods/kube-system_proxymux-client-aaaa/proxymux-client/0.log" }, "id": "id112233", "oracle": { "compartmentid": "ocid1.compartment.oc1..a....", "ingestedtime": "2022-05-10T03:17:25.628Z", "instanceid": "ocid1.instance.oc1.phx.a....", "loggroupid": "ocid1.loggroup.oc1.phx.a....", "logid": "ocid1.log.oc1.phx.a....", "tenantid": "ocid1.tenancy.oc1..a...." }, "source": "oke-source", "specversion": "1.0", "subject": "/var/log/pods/kube-system_proxymux-client-aaaa/proxymux-client/0.log", "time": "2022-05-10T03:16:16.897Z", "type": "com.oraclecloud.logging.custom.kube_system_namespace" }Por lo tanto, el analizador de JSON se debe crear utilizando la versión reducida relevante del contenido del log de ejemplo. Consulte Creación de un analizador.
-
Cree un origen de log con el nombre que sea igual al valor de la clave type. Si el valor que ha anotado anteriormente es
com.oraclecloud.logging.custom.kube_system_namespace, el nombre de origen también debe ser el mismo. Al crear el origen de log, especifique el analizador que ha creado en el paso anterior. Consulte Creación de un origen.Si no crea un origen definido por el usuario cuyo nombre coincida con el valor de la clave type en los logs, los logs se procesan mediante el origen definido por Oracle Logs de esquema unificado de OCI. This source uses the Oracle-defined parser OCI Unified Schema Log Format to parse the fields Time, Type, OCI Resource Name, Collection Time, Compartment ID, Logging Log Group OCID, Logging Log OCID, Tenant, Logging Record ID, CloudEvents Spec Version, and Message.
-
Cree un nuevo conector de servicio o utilice un conector de servicio existente que establezca una conexión entre OCI Logging y Oracle Log Analytics para enrutar sus logs personalizados. Especifique
Logging Analyticscomo destino y agregue una nueva conexión de origen correspondiente a los logs personalizados de registro. Tenga en cuenta los detalles del compartimento de grupo de logs de Logging, el grupo de logs de Logging y los logs personalizados de Logging.Para obtener pasos detallados para crear el conector de servicio, consulte el paso 2 en Configuración del conector de servicio para ingerir logs.
En la sección Configurar tarea, puede configurar una tarea de filtro de log y especificar la propiedad que se utilizará para el filtrado. Consulte la documentación de Oracle Cloud Infrastructure - Gestión de conectores de servicio.
En caso de que haya varios logs personalizados, puede utilizar el mismo conector de servicio y agregar más tareas de filtro de log.
Después de establecer la conexión con OCI Logging, los logs personalizados comenzarán a fluir a Oracle Log Analytics. Para buscar logs personalizados en el explorador de logs, puede consultar el nombre del origen de log. Por ejemplo,
'Log Source' = com.oraclecloud.logging.custom.kube_system_namespace | stats count as logrecords by 'Log Source'Para dejar de recopilar sus logs personalizados desde OCI Logging, consulte Parada de la recopilación de logs desde el conector de servicio.