Outil de reprise MSMQ - APERAM
Période : Du 26 Mai 2025 au 04 Juillet 2025
1. Contexte du projet
Aperam est un acteur industriel majeur spécialisé dans la production d'acier inoxydable (site de Gueugnon). Le système d'information de l'usine repose sur de nombreuses applications communiquant entre elles de manière asynchrone via des files d'attente de messages (MSMQ - Microsoft Message Queuing).
2. Objectifs du projet
Pour qui ? Les techniciens IT et ingénieurs support d'Aperam.
Pour quoi faire ? Développer un outil permettant de lire des logs XML et de ré-injecter (rejouer) ces messages dans les files MSMQ en cas de plantage d'une application cible.
Dans quel but ? Fiabiliser la production en évitant la perte de données industrielles cruciales lors d'incidents informatiques.
3. Technologies utilisées
SQL Server
Mise en place de la base de données de configuration
VB.NET
Développement du client lourd Windows Forms
4. Architecture logicielle/matérielle du projet
L'application développée (VB.NET) s'exécute sur le poste du technicien. Elle interroge un serveur de fichiers local pour lire les archives XML, se connecte au serveur SQL pour récupérer la configuration des files d'attentes, et interagit avec le service MSMQ Windows interne pour poster le message.
5. Travaux effectués
- Compréhension de l'environnement industriel et du fonctionnement de MSMQ.
- Développement d'une interface Windows Form intuitive de recherche de fichiers de logs XML.
- Création d'un module de lecture, d'analyse et de prévisualisation du contenu XML.
- Programmation de la méthode d'envoi d'un message structuré vers une file MSMQ spécifique.
- Développement d'une interface d'administration (CRUD) pour gérer dynamiquement les différentes files d'attentes existantes.
- Création de tables et de procédures stockées sécurisées sur SQL Server.
6. Base de données
Modélisation simple pour la gestion de la configuration de l'outil (Tables pour lister les serveurs, les applications et les chemins de queue MSMQ).
7. Maquettes de l'application
Aperçu détaillé des interfaces développées, séparé entre la zone de traitement et la zone d'administration.
Module de recherche et traitement
Module de Configuration (CRUD)