OdooWiki OCA HUB

Module Analysis

module_analysis folder_open OCA/server-tools open_in_new
Sin categoría Licencia: AGPL-3

Este módulo te permite saber 'cuánto código' se está ejecutando en tu instancia de Odoo, agrupado por 'Type' (Odoo Core, OCA, otros...)

Este módulo puede ser útil en los siguientes casos:

  • Para analizar el tamaño de tu deuda técnica, en relación con tus módulos Custom
  • Para conocer la proporción entre módulos de Odoo / OCA y Custom
  • Para evaluar la cantidad a pagar a odoo para actualizar tu código custom, o la carga de trabajo inducida

Para ello, añade nuevos conceptos

  • ir.module.author, basado en el valor author presente en el archivo manifest.
  • ir.module.type, poblado por defecto con los valores Odoo y OCA.

Cada módulo instalado tiene datos extra en la pestaña 'Technical Data':

Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.

auto_awesome Qué hace este módulo

Generado por IA a partir del código · Odoo 18.0

Analiza el tamaño del código de los módulos de Odoo instalados y clasifícalos por tipo (Odoo Core, OCA, personalizado) y autor, con informes de tabla dinámica y gráfico.

Este módulo añade herramientas para medir cuánto código se ejecuta en tu instancia de Odoo y para clasificar cada módulo instalado por su origen. Aparece bajo el menú Technical (modo desarrollador) como un menú "Analysis" con los submenús Settings y Reporting.

  • En el formulario de cada módulo instalado, un botón "Refresh Code Analysis" cuenta las líneas de código Python, XML, JS, CSS y SCSS y rellena el grupo "Code Size". También muestra los autores del módulo y su tipo analizado.
  • Un trabajo programado (deshabilitado por defecto) puede actualizar el análisis diariamente para todos los módulos instalados.
  • Puedes definir tipos de módulo (por ejemplo, Odoo Core, OCA) y reglas que asignan automáticamente un tipo en función del autor del módulo. Se precargan dos tipos y varias reglas.
  • Los autores se almacenan como registros separados con un recuento de sus módulos instalados; se exige un nombre único.
  • Reporting proporciona una tabla dinámica y un gráfico circular de los módulos instalados agrupados por tipo, con las cantidades de código como medidas.
  • Dos parámetros del sistema te permiten excluir directorios (lib, demo, test, etc.) y archivos (__manifest__.py, __openerp__.py) del análisis.
  • Cuando se desinstala un módulo, se borran sus datos de análisis.

El acceso a los nuevos modelos está restringido a los administradores del sistema.

Depende de

base

Menús que añade

AnalysisSettingsReportingmenu_module_authorsmenu_module_by_typemenu_module_typesmenu_module_type_rules
Modelos y campos (4)
  • ir.module.type · modelo nuevoname, sequence, installed_module_ids (Installed Modules), installed_module_qty (Modules Quantity)
  • ir.module.author · modelo nuevoname, installed_module_ids (Modules), installed_module_qty (Installed Modules Quantity)
  • ir.module.module · amplía un modelo existenteauthor_ids (Authors), js_code_qty (JS Code Quantity), css_code_qty (CSS Code Quantity), xml_code_qty (XML Code Quantity), scss_code_qty (SCSS Code Quantity), module_type_id (Analysed Module Type), python_code_qty (Python Code Quantity)
  • ir.module.type.rule · modelo nuevosequence, module_domain, module_type_id (Module type)

Texto generado por IA (DeepSeek) al leer el código de la versión 18.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub

Disponibilidad por versión

Revisado: 2026-11-03
Confirmado (verificado en repositorio y rama) Estimado (sin verificar) Sin información

Estado de confirmación: 7 confirmadas, 2 sin información de 9 versiones.

Fuentes · Odoo 18.0

Confirmado el 2026-11-03 en la rama 18.0 de OCA/server-tools.

terminal Instalación y uso

Documentación de OCA · Odoo 18.0

Para usar este módulo, tiene que instalar la librería de Python pygount.

pip install pygount

  • Ir a Apps / Module Analysis / Modules Types Rules

Las Module types Rules son útiles para obtener el Type de un módulo, basándose en su información.

Este módulo viene con reglas predeterminadas.

>

Puedes añadir tus reglas personalizadas para identificar los módulos que tu equipo ha desarrollado, por ejemplo,

>

para actualizar los datos manualmente, tienes que:

  • Ir a 'Settings' / 'Technical' / 'Scheduled Actions'
  • Ejecutar manualmente la acción: 'Update Module Analysis'

Esto actualizará el análisis de tus módulos instalados.

para actualizar los datos automáticamente, tienes que:

  • Ir a 'Settings' / 'Technical' / 'Scheduled Actions'
  • Configurar la acción 'Update Module Analysis' y activarla. (Por defecto, el cron está inactivo y no se realiza ningún análisis)

Añadir datos extra

Si quieres analizar otros datos, (por ejemplo, tener el número de archivos HTML), crea un módulo personalizado y sobrecarga el modelo del módulo:

from odoo import api, fields, models

class IrModuleModule(models.Model):
   _inherit = 'ir.module.module'

   xml_documentation_qty = fields.Integer(
      string='Quantity of Comments in XML Files')

  @api.model
  def _get_analyse_settings(self):
      res = super()._get_analyse_settings()
      if not '.html' in res:
          res['.html'] = {}
      res['.html']['documentation'] 'xml_documentation_qty'
      return res

Excluir archivos y directorios

Dos parámetros están disponibles en 'Settings' / 'Technical' / 'Parameters' 'System Parameters':

>

La lista de carpetas y nombres de archivo se excluirá del análisis. Puedes cambiar la configuración predeterminada.

  • Ve a 'Apps' / 'Module Analysis' / 'Installed module by Types'

Abre las estadísticas para analizar el detalle del código instalado

> > >

Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen.

info

Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.