Módulo gratuito para auditar Drupal y dashboard para controlar todos tus proyectos

Desde hace años, una parte recurrente de mi trabajo son las auditorías de proyectos Drupal. Me llegan webs que van lentas, sitios con problemas de seguridad que nadie ha revisado en meses, proyectos heredados de otra agencia donde nadie sabe muy bien en qué estado está cada cosa. El denominador común es casi siempre el mismo: hay problemas evidentes que llevan tiempo ahí y que no se han detectado porque nadie tenía un proceso sistemático para buscarlos.

Para ese trabajo tenía mis propios scripts. Los fui construyendo y afinando con el tiempo, añadiendo comprobaciones según me iba encontrando con nuevos tipos de problemas en los proyectos de mis clientes. Funcionaban bien, pero eran scripts sueltos, difíciles de mantener y de compartir.

Hace unos meses decidí unificarlo todo dentro de un módulo Drupal contribuido.

¿Por qué un módulo y no seguir con scripts?

La diferencia práctica es enorme. Un módulo contribuido en Drupal.org significa que cualquier persona puede instalarlo en cualquier proyecto con un solo comando de Composer, independientemente del hosting que esté usando. No hay que copiar scripts, no hay que configurar nada especial, no hay dependencias extrañas. Y el código es completamente open source, así que cualquiera puede ver exactamente qué comprueba y cómo lo hace antes de instalarlo en producción.

El resultado es Drupal Site Audit, un módulo gratuito que analiza tu instalación y genera puntuaciones de 0 a 100 en distintas categorías: módulos y actualizaciones, performance, SEO técnico, configuración de caché, arquitectura de contenido, seguridad, frontend, multilingüe y más. Cada categoría tiene su propio informe detallado con los problemas detectados y recomendaciones concretas.

El módulo está organizado en submódulos independientes. Instalas solo lo que necesitas para cada proyecto. Si lo que quieres es rastrear actualizaciones y avisos de seguridad, con audit_updates es suficiente. Si necesitas un análisis profundo de la configuración de caché y Dynamic Page Cache, tienes audit_cache. Para revisar calidad del código de custom modules, audit_phpstan y audit_phpcs funcionan en entornos de desarrollo y staging.

La instalación es estándar:

composer require drupal/audit
drush en audit_all

El informe completo aparece en Admin > Reports > Audit. Todo el análisis se queda en tu servidor.

El otro problema: el seguimiento continuo

Tener un módulo que genera auditorías resuelve el problema de hacer el análisis inicial rápido. Pero tengo otro problema distinto: el seguimiento continuado de los proyectos de mis clientes.

Entrar a cada proyecto por separado para revisar si hay actualizaciones pendientes, si la puntuación de performance ha bajado, si ha aparecido algún aviso de seguridad... para un proyecto es asumible. Para varios clientes a la vez, es una cantidad de tiempo que no quiero dedicar a revisar configuraciones de forma repetida. Ese tiempo prefiero dedicarlo a encontrar y aplicar soluciones útiles, que es donde está el valor que puedo aportar.

De ahí salió la idea de DruScan, un dashboard centralizado donde conecto todos mis proyectos Drupal. El módulo envía los datos de la auditoría al dashboard vía cron, y desde ahí puedo ver el estado de todos mis proyectos en una sola pantalla sin entrar a ninguno de ellos.

Lo que me resulta más útil del día a día no es solo ver la puntuación actual, sino ver cómo evoluciona con el tiempo. Si la puntuación de performance de un proyecto baja de un mes para otro, quiero saberlo. Si hay un aviso de seguridad nuevo, quiero recibir una notificación ese mismo día, no enterarme cuando el cliente me llama.

Y también me sirve para mostrarle a mis clientes cómo está evolucionando su proyecto. En lugar de explicar lo que he hecho en el último mes con palabras, puedo enseñarles un gráfico donde se ve que la puntuación de seguridad pasó de 65 a 88. Eso es mucho más tangible que un resumen en un email.

Una pata más del negocio

Tengo que ser honesto sobre qué es DruScan más allá de una herramienta personal y porque lo he publicado para que más gente lo utilice.

Lo he montado también como una línea de negocio. La realidad del trabajo freelance es que mis ingresos están limitados por mis horas, y las horas son las que son.

DruScan es ese intento de construir algo escalable dentro del sector Drupal sin depender solo de vender mis horas.

El plan gratuito permite conectar proyectos ilimitados y ver las puntuaciones actuales. Los planes de pago añaden histórico de puntuaciones, sincronización diaria, alertas automáticas por email cuando baja una métrica o aparece una actualización de seguridad, comparativa entre entornos, y gestión de equipos para que el cliente pueda tener acceso al dashboard sin que le tengas que dar acceso al panel de Drupal.

Como oferta especial, los primeros 100 proyectos de pago tienen un descuento del 30% garantizado durante tres años. El servicio está en fase early adopter y eso es exactamente lo que es: quiero que gente real lo use en proyectos reales antes de escalar.

Lo puedes usar gratis desde ya. Si te interesa la versión de pago, contáctame directamente porque el acceso está siendo gestionado manualmente de momento.

Por qué puede interesarte aunque no seas yo

Si gestionas varios proyectos Drupal, tienes exactamente el mismo punto ciego que tenía yo. Saber en qué estado real está cada proyecto sin que esa información te cueste horas de trabajo semanal. El módulo resuelve la parte de hacer auditorías rápido. El dashboard resuelve la parte de no tener que repetir ese proceso manualmente cada semana.

Y si recibes proyectos de auditoría como yo, el módulo te da un análisis estructurado en minutos en lugar de horas. Puedes entrar a un proyecto desconocido, correr el análisis, y tener una imagen clara de los problemas antes de hablar con el cliente.

Por experiencia te puedo decir que la mayoría de los proyectos que me llegan para una auditoría tienen los mismos tipos de problemas: caché mal configurada, módulos sin actualizar, Views sin caché que invalidan la cache de varias páginas, malas prácticas en módulos/themes custom, agregación de CSS y JS deshabilitada en producción, malas configuraciones de SEO, y muchas otras cosas típicas que pasan desapercibidas a menos que sepas donde buscar. El módulo los detecta todos de forma sistemática y los prioriza.

Pruébalo y cuéntame qué ves

El módulo está en drupal.org/project/audit y es completamente gratuito. DruScan está en druscan.com y el plan gratuito no requiere tarjeta.

Si lo instalas y ves algo que no funciona, que falta, o que podría estar mejor planteado, me gustaría saberlo. Puedes escribirme por email a [email protected], por LinkedIn, o abrir un issue directamente en la cola del módulo en drupal.org. Estoy en una fase donde el feedback de gente que lo usa en situaciones reales tiene un impacto directo en lo que se desarrollará a continuación.


He tardado bastante más de lo que pensaba en llegar a publicar esto como módulo contribuido. Los scripts funcionaban y siempre había algo más urgente. Pero la realidad es que tener todo dentro de un módulo estándar de Drupal, con la infraestructura de drupal.org detrás, es un salto cualitativo respecto a mantener scripts sueltos. Ojalá lo hubiera hecho antes.

¿Necesitas un experto en Drupal?

Desarrollador Drupal senior, freelance, especializado en lo más complejo: migraciones, sitios multilingüe, plataformas SaaS e integración con Stripe. Uso IA para reducir tiempos y costes de entrega, con revisión experta en cada línea de código.

Sin agencias, sin intermediarios. Contacto directo con quien hace el trabajo.