Tecnicatura Universitaria en Programación - Observabilidad
19 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

¿Qué es la observabilidad?

La observabilidad se refiere a la capacidad de entender, analizar y rastrear el comportamiento de un sistema de software en tiempo real, permitiendo a los equipos de desarrollo y operaciones identificar problemas, diagnosticar fallos y optimizar el rendimiento de las aplicaciones.

¿Cuáles son las tres áreas clave de la observabilidad?

  • Monitoreo, análisis y trazas
  • Métricas, análisis y depuración
  • Métricas, registros y trazas (correct)
  • Monitorización, registros y trazas
  • ¿Qué significa la expresión 'The Four Golden Signals'?

  • Las cuatro señales que ayudan a comprender el impacto de una aplicación
  • Las cuatro señales que sirven para monitorear la capacidad de un sistema
  • Las cuatro señales que son esenciales para garantizar el rendimiento y la salud de una aplicación (correct)
  • Las cuatro señales que optimizan el rendimiento de una aplicación
  • La observabilidad es lo mismo que el monitoreo.

    <p>False</p> Signup and view all the answers

    ¿Qué tipo de datos se recopilan para la observabilidad?

    <p>Métricas, registros y trazas</p> Signup and view all the answers

    ¿Cuáles son las ventajas de los registros estructurados?

    <p>Los registros estructurados son fáciles de analizar y consultar utilizando herramientas de búsqueda y agregación. Facilitan la búsqueda de eventos específicos y la creación de métricas personalizadas.</p> Signup and view all the answers

    ¿Cuáles son las desventajas de los registros desestructurados?

    <p>Los registros desestructurados son más difíciles de analizar y consultar, ya que no siguen una estructura coherente. Pueden dificultar la búsqueda y el análisis automatizados de eventos específicos.</p> Signup and view all the answers

    ¿Qué son las trazas?

    <p>Las trazas son registros detallados de las actividades y eventos que ocurren dentro de una aplicación o sistema en un momento específico. Capturan información como marcas de tiempo, identificadores de transacciones, detalles de solicitudes, resultados de operaciones y otros datos relevantes.</p> Signup and view all the answers

    ¿Qué es el tracing?

    <p>El tracing consiste en estudiar el comportamiento de las requests y de su lifecycle, siguiendo una request a lo largo de su procesamiento en sistemas distintos, de una aplicación.</p> Signup and view all the answers

    ¿En qué se basa OpenTelemetry?

    <p>OpenTelemetry es una plataforma de observabilidad que permite a los desarrolladores y operadores recopilar datos críticos para entender el rendimiento y el comportamiento de aplicaciones y sistemas distribuidos.</p> Signup and view all the answers

    ¿Qué hace OpenTelemetry?

    <p>OpenTelemetry proporciona una API común para instrumentar aplicaciones y recopilar métricas, trazas y registros. Permite la integración con plataformas de observabilidad, ofrece flexibilidad y extensibilidad a través de plug-ins y adaptadores para adaptarse a los requisitos específicos de las aplicaciones y sistemas.</p> Signup and view all the answers

    ¿Cuáles son los componentes principales de OpenTelemetry?

    <p>OpenTelemetry se compone de una especificación para todos los componentes, un protocolo estándar que define la forma de los datos de telemetría, convenciones semánticas para definir un esquema estándar de nombres para los tipos de datos de telemetría comunes, APIs que definen cómo generar datos de telemetría, un ecosistema de bibliotecas que implementa la instrumentación para bibliotecas y frameworks comunes, componentes de instrumentación automática que generan datos de telemetría sin necesidad de código, SDKs de idioma que implementan la especificación, APIs y exportación de datos de telemetría, OpenTelemetry Collector, que es un proxy que recibe, procesa y exporta datos de telemetría e una gran variedad de otras herramientas.</p> Signup and view all the answers

    ¿Qué significa una 'métrica' en el contexto del desarrollo de software?

    <p>Un valor cuantitativo que se usa para evaluar un aspecto específico de un producto o servicio</p> Signup and view all the answers

    ¿Cuáles son los tipos de 'métricas'?

    <p>Métricas de rastreo, métricas de contadores y métricas de histogramas</p> Signup and view all the answers

    ¿Qué es un 'contador'?

    <p>Un contador es un instrumento métrico que se utiliza para realizar un seguimiento de eventos discretos. Es una métrica simple que aumenta o disminuye en respuesta a eventos específicos en el sistema que se está monitorizando. Los contadores proporcionan información sobre la cantidad de veces que un evento ocurre, algo que es fundamental para evaluar el uso y el comportamiento de una aplicación o sistema.</p> Signup and view all the answers

    ¿Qué es un 'UpDownCounter'?

    <p>Un UpDownCounter es un contador que se acumula con el tiempo, pero que también puede volver a bajar. Es un valor que aumenta y disminuye con la cantidad de elementos de trabajo, por ejemplo, en una cola.</p> Signup and view all the answers

    ¿Qué es un 'Gauge'?

    <p>Un Gauge es un instrumento métrico que se utiliza para medir valores que pueden aumentar o disminuir de forma arbitraria a lo largo del tiempo. Registan un valor puntual en un momento específico y no almacenan información sobre los cambios acumulados.</p> Signup and view all the answers

    ¿Qué es un 'histograma'?

    <p>Un histograma es una agregación de valores, por ejemplo, latencias de solicitud u otros datos, que se representan en estadísticas de valor indicando la frecuencia con la que ocurren distintos rangos de valores en un conjunto de datos.</p> Signup and view all the answers

    ¿Para qué se utilizan las métricas en el desarrollo de software?

    <p>Las métricas desempeñan un papel fundamental en el desarrollo de software, ayudando a la evaluación de la calidad del software, a la gestión de proyectos, a la mejora continua, al rendimiento y la eficiencia, a la satisfacción del cliente y a la toma de decisiones estratégicas.</p> Signup and view all the answers

    Study Notes

    Tecnicatura Universitaria en Programación - Laboratorio de Computación IV

    • Unidad Temática N°4: Observabilidad
    • Año:
    • Cuatrimestre:
    • Curso: Laboratorio de Computación IV

    Introducción a la Observabilidad (Observability)

    • La observabilidad en el desarrollo de software es esencial para entender el comportamiento de aplicaciones y sistemas complejos y distribuidos.
    • Permite analizar y rastrear el comportamiento en tiempo real, diagnosticar fallos y optimizar el rendimiento.
    • Es relevante en arquitecturas de microservicios y contenedores debido a su alta complejidad.
    • La observabilidad tiene sus raíces en la teoría de control, donde se refiere a la capacidad de determinar el estado interno de un sistema observando sus salidas.

    Logs (Registros)

    • ¿Qué son los Logs?: Registros cronológicos de eventos o actividades ocurridas en una aplicación o sistema.
    • Importancia: Solución de problemas, depuración, diagnóstico de errores, auditoría, seguridad y observabilidad.
    • Tipos de Logs:
      • Aplicación: Informaciones sobre funcionamiento interno (mensajes, errores, advertencias)
      • Acceso: Registros de solicitudes de usuarios (incluyendo IP, usuario, URLs).
      • Seguridad: Eventos de seguridad (intento de acceso, cambios de contraseña).
      • Sistema: Informes sobre el sistema operativo y la infraestructura.
      • Servidor Web: Informaciones sobre solicitudes HTTP, códigos de respuesta, tiempos de respuesta.
      • Base de datos: Consultas SQL, transacciones y errores relacionados a la base de datos.
    • Logs estructurados: Formato predefinido con campos y valores (facilita el análisis). Ejemplo: JSON.
    • Logs desestructurados: Formato libre sin estructura predefinida.

    Niveles de log

    • TRACE (ALL): Detalle máximo
    • DEBUG: Mensajes informativos detallados.
    • INFO: Estados importantes del sistema.
    • WARNING: Condiciones que podrían llevar a errores futuros.
    • ERROR: Errores sin detener la aplicación.
    • CRITICAL: Errores graves que pueden detener la aplicación.
    • FATAL: Fallos graves que amenazan la integridad del sistema.

    Herramientas y Prácticas de Logging

    • Herramientas especializadas para la gestión de logs.
    • Prácticas como la gestión de mensajes, el almacenamiento, el filtrado y la visualización.

    Métricas

    • Importancia: Evaluar la eficiencia, identificar áreas de mejora, establecer metas, tomar decisiones, evaluar y gestionar el riesgo.
    • Tipos de Metricas:
      • Contador: Seguimiento de eventos discretos.
      • UpDownCounter: Aumenta o disminuye.
      • Gauge: Valores instantáneos que pueden cambiar arbitrariamente.
        • Ejemplo: Uso de CPU, memoria disponible.
      • Histograma: Registra la frecuencia con la que ocurren distintos rangos de valores.

    Trazas (Traces)

    • Definición: Registro detallado de la ejecución de una aplicación o sistema.
    • Componentes: Marcas de tiempo, identificadores de transacciones, detalles de solicitudes, resultados, etc.
    • Importancia: Seguimiento, factor muy importante en sistemas distribuidos, identificar el camino de una solicitud o transacción, ejecución eficiente.

    Open Telemetry (OTel)

    • Definición: Framework y kit de herramientas para la observabilidad, unificado.
    • Origen: Fusión de OpenTracing y OpenCensus, provee una API común para instrumentar aplicaciones y recopilar datos.
    • Importancia: Resolver desafíos de observabilidad en sistemas modernos.
    • Componentes principales: Especificaciones, protocolo estándar, convenciones semánticas, APIs, librerías, etc

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    Description

    Este cuestionario explora el concepto de observabilidad en el desarrollo de software, centrándose en su importancia para el análisis y rastreo de aplicaciones complejas. Se discutirá la naturaleza de los logs y su relevancia en la solución de problemas y optimización de rendimiento en sistemas distribuidos. Ideal para estudiantes de la Tecnicatura Universitaria en Programación, en su cuarto cuatrimestre.

    More Like This

    Use Quizgecko on...
    Browser
    Browser