¡Ayuda al desarrollo del sitio, compartiendo el artículo con amigos!

Introducción al modo de depuración Flask

El modo de depuración de Flask se define como un módulo que garantiza información sobre la depuración impulsada como una extensión para Flask durante el desarrollo de la aplicación Flask. Esta capacidad se incorpora como parte de las herramientas de desarrollo en el desarrollo de cualquier aplicación Flask en un servidor de desarrollo y es una opción para habilitarla también en un entorno de producción. el rastreo interactivo es una de las muchas ideas excelentes que permite a cualquier desarrollador mirar hacia atrás en el código y evaluar qué salió mal para mejorar y corregir el código de manera efectiva.Una práctica efectiva y a menudo conocida como la mejor práctica es usar el depurador en el entorno de desarrollo, aunque también se puede optar por usarlo en producción, ¡pero solo temporalmente!

¿Por qué necesitamos un matraz para el modo de depuración?

Para poder encontrar y eliminar errores en la aplicación que se está desarrollando, lo que más necesitamos es el modo de depuración para que, una vez que se corrijan los errores, la aplicación pueda calificar para ser el producto más valioso y la aplicación libre de errores aumente su propio valor inmensamente. El modo de depuración no solo ayuda a mejorar la calidad del código, sino que también lo ayuda a llegar a un punto en el código donde podría haber una posible interrupción del código.

Háganos saber acerca de posibles errores a través de un ejemplo simple. En nuestro código hay un cálculo matemático donde dividimos 2 números. Digamos que en algunas situaciones el denominador sea cero. En este caso, el tipo de datos entero podría ser incapaz de manejar tales escenarios. Ahora, en un código donde hay múltiples módulos, si es casi imposible encontrar de dónde ha surgido el error e incluso en un nivel superior, cuál es el error.Ahora, en el caso del servidor Flask, si el modo de depuración no está activado, solo veríamos un código de error como 404 o, en algunos casos, un error interno del servidor, etc. Ahora, averiguar el tipo de error y dónde se generó es un tarea hercúlea! Ahora, en caso de ejecutar el código con el modo de depuración activado en Flask, podremos rastrear dónde ocurrió el error y cuál es el error.

El servidor Flask también proporciona una herramienta interactiva para saber cuál era el valor antes de que se encontrara el error, ya que tiene la utilidad de ejecutar el código python desde el navegador y usar esa herramienta interactiva para acceder fácilmente a la mayoría nivel granular para encontrar el problema y luego solucionarlo. Ahora, como práctica recomendada, nunca debemos usar el modo de depuración en producción. Las razones son las siguientes:

  • La razón principal y principal es el rendimiento. Cuando se usa el modo de depuración, hay posibilidades de ralentizar significativamente la velocidad de ejecución a medida que aumenta la utilización de RAM.
  • La siguiente razón es una violación de seguridad que podría ser posible en caso de usar el modo de depuración, aunque hay un PIN adjunto a los rastreos, ¡pero existe la posibilidad de una violación de seguridad y eso también en los datos de producción!

¿Cómo funciona el modo de depuración Flask?

Ahora es el momento de que analicemos el funcionamiento del modo de depuración de Flask, ya que en este momento sabemos la necesidad del modo de depuración de Flask. Como referencia, utilizaremos extractos del depurador incorporado del servidor de aplicaciones Flask, es decir, el servidor de desarrollo Werkzeug. Se recomienda utilizar el depurador incorporado solo en el caso de etapas de desarrollo. En el entorno de producción, el depurador permite la ejecución de código python arbitrario y, aunque está protegido por PIN, no se puede confiar en él por motivos de seguridad.

Primero, necesitaríamos establecer el entorno en desarrollo configurando la variable FLASK_ENV. esto se hace ejecutando:

establecer FLASK_ENV=desarrollo

Una vez que se establece este entorno, el depurador aparecerá automáticamente cuando se produzca un error. Otra forma de habilitar el modo de depuración es pasar debug=True en el propio código de Python. Ahora, cuando se está ejecutando un depurador, cuando se encuentra un error, comienza desde la línea de código e intenta rastrearlo hasta la función principal. De esta manera, podemos obtener un seguimiento completo de dónde ocurrió el error y toda la función subordinada bajo la cual se encuentra la parte del código de ejecución del error.

Además del depurador incorporado, ¡tenemos la posibilidad de usar depuradores eternos para la aplicación Flask según se considere adecuado de acuerdo con la utilidad!

Ventajas y desventajas

No todos los conceptos son perfectos y, por lo tanto, consisten en pros y contras. Revisemos los pros y los contras del modo de depuración Flask aquí:

Ventajas

  • El modo Flask Debug permite a los desarrolladores localizar cualquier posible error y también la ubicación del error, registrando un rastreo del error.
  • El modo de depuración de Flask también permite a los desarrolladores ejecutar de forma interactiva códigos de Python arbitrarios, para que uno pueda resolver y llegar a la causa raíz de por qué ocurrió un error.
  • Todas las utilidades del modo de depuración permiten a los desarrolladores ahorrar tiempo y energía.
  • Además del rastreo, el texto que señala un error permite interpretaciones fáciles.

Desventajas

  • El modo de depuración de Flask, si se deja activado en producción, genera problemas de rendimiento.
  • En producción, el uso del modo de depuración puede generar problemas de seguridad, ya que se pueden ejecutar algunos códigos python arbitrarios para piratear datos confidenciales de "producción".
  • ¡Uso limitado solo al entorno de desarrollo!

Ejemplos

Aquí están los siguientes ejemplos que se mencionan a continuación

Ejemplo 1

Ejecutar con Entorno como desarrollo:

Syntax (debugMode.py es un código python que contiene una aplicación de matraz)

En la línea de comando:

establecer FLASK_ENV=desarrollo
python debugMode.py

Salida:

Ejemplo 2

Ejecutando con Environment como producción:

Sintaxis (debugMode.py es un código python que contiene una aplicación de matraz)

En la línea de comando:

establecer FLASK_ENV=producción
python debugMode.py

Salida:

Ejemplo 3

Ejecutando con error en el código:

Sintaxis (debugMode.py es un código python que contiene una aplicación de matraz con error deliberado)

En código python:

desde matraz importado Matraz
appFlask=Flask(__name__)
@appFlask.ruta('/inicio')
def inicio():
resultado=10/0
return 'Estamos aprendiendo HTTPS @ EduCBA'
"si __nombre__==__principal__:
"
appFlask.run(depuración=Verdadero)

Salida:

Conclusión

Con este artículo, tenemos una esencia de cómo funciona un depurador y sus ventajas y desventajas debido al uso del depurador en el servidor de desarrollo. También analizamos un error deliberado para comprender el seguimiento de la pila del error, ¡particularmente señalando el punto de generación del error!

¡Ayuda al desarrollo del sitio, compartiendo el artículo con amigos!