Accéder au contenu principal Passer au contenu complémentaire

Construire une Route en tant que microservice Spring Boot (déprécié)

Availability-noteDéprécié·e

Pourquoi et quand exécuter cette tâche

Ce type de build est déprécié à partir de la version 8.0 R2024-02 et sera supprimé dans la version R2024-09. Pour construire un Job de service de données avec le nouveau type de build microservice, vous devez :
  • vérifier la configuration des microservices,
  • modifier le type de build de votre Route à Microservice et la construire/tester/déployer à nouveau.
Pour plus d'informations, consultez Construire une Route vers un microservice.
Note InformationsRemarque : Les méthodes Java de l'objet context utilisées dans le cConfig ou dans le cProcessor, par exemple keySet(), entrySet(), values(), size() ne sont pas supportées dans le type de build Microservice. Ces méthodes sont supportées uniquement dans le type de build OSGi. Dans Spring Boot, ContextProperties doit être une classe POJO et ne peut étendre java.util.Properties.

Pour construire une Route vers un microservice ESB basé Spring Boot, procédez comme suit :

Procédure

  1. Cliquez sur Edit project properties (Modifier les propriétés du Projet) dans la barre d'outils du Studio Talend ou sélectionnez File (Fichier) > Edit Project Properties (Modifier les propriétés du Projet) dans la barre de menu pour ouvrir la boîte de dialogue Project Settings (Paramètres du projet).
    Configuration par défaut des microservices Spring Boot
  2. Dans l'arborescence à gauche de la boîte de dialogue, sélectionnez Build (Construction) > Spring Boot microservices (Microservices Spring Boot) > Default configuration (Configuration par défaut) pour afficher la vue correspondante et personnaliser la configuration du microservice Spring Boot selon vos besoins.
  3. Dans l'arborescence à gauche, sélectionnez Log4j pour afficher la vue correspondante.
    Configuration de Log4j
  4. Personnalisez la configuration de Log4j selon vos besoins. Les instructions Log4j XML par défaut écrivent uniquement les logs de type WARN dans la console. Pour plus d'informations concernant les paramètres Log4j 1, consultez Log4jXmlFormat (uniquement en anglais).
    Un exemple de configuration Log4j est présenté ci-dessous et fournit également un fichier tesb.log lorsque le microservice ESB est démarré. Notez que la configuration de Log4j est la même pour le Studio Talend et le microservice ESB. Néanmoins, un fichier log4j.xml peut également être placé dans un dossier de configuration externe du microservice, lors de l'exécution, afin de fournir une configuration Log4j spécifique pour le déploiement en production.
    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
        <appender name="stdout" class="org.apache.log4j.ConsoleAppender">
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/>
            </layout>
        </appender>
        <appender name="rollingFile" class="org.apache.log4j.RollingFileAppender">
            <param name="file" value="tesb.log"/>
            <param name="MaxFileSize" value="1024KB"/>
            <param name="MaxBackupIndex" value="10"/>
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/>
            </layout>
        </appender>
        <root>
            <priority value="info"/>
            <appender-ref ref="stdout"/>
            <appender-ref ref="rollingFile"/>
        </root>
    </log4j:configuration>
  5. Si la Route contient un composant cSOAP ou cREST, vous devez utiliser une URL d'endpoint relative au lieu d'une URL absolue. Lorsque le microservice est en cours d'exécution, un conteneur Tomcat embarqué, avec le port par défaut 8065 est démarré par Spring-boot. Les services REST et SOAP s'exécutent également sur ce port. Si vous souhaitez écraser le port par défaut, utilisez l'option --server.port dans la commande ou configurez-la dans le fichier application.properties du dossier /config, dans le .jar du microservice.
    Si la Route contient un composant cSOAP ou cREST et si un ou plusieurs services d'infrastructure ESB sont utilisés, vous devez effectuer les étapes suivantes pour construire la Route :
    • Si Service Activity Monitoring est activé, modifiez le fichier <Studio_Home>/esb/agent.properties afin de configurer l'agent de Service Activity Monitoring selon vos besoins. Pour plus d'informations concernant les propriétés de agent.properties, consultez la section relative à la configuration de l'agent de Service Activity Monitoring, dans le Guide Talend ESB Infrastructure Services Configuration Guide (en anglais).

    • Si Service Locator est activé, modifiez le fichier <Studio_Home>/esb/agent.properties afin de configurer le Service Locatorselon vos besoins. Pour plus d'informations concernant les propriétés de locator.properties, consultez la section relative à la configuration du Service Locator, dans le Guide Talend ESB Infrastructure Services Configuration Guide (en anglais).

    • Si la Route est un fournisseur de service et que l'authentification par jeton utilisateur·rice est activée, modifiez le fichier Studio_Home/esb/microservice/users.properties afin de spécifier les informations d'authentification de l'utilisateur·rice, en suivant le format <USERNAME>=<PASSWORD>. Par exemple, les paramètres suivants définissent deux utilisateurs ou utilisatrices :

      tadmin=tadmin
      tesb=tesb
    • Si l'authentification par jeton SAML et les autorisations sont activées, ou si le Service Registry est utilisé; vous devez installer les artefacts d'entreprise ESB dans votre référentiel local Maven, à l'aide des commandes suivantes, dans une invite de commande :

      cd <TalendRuntimePath>/add-ons/maven-repo
      mvn clean package -s <Studio_Home>/configuration/maven_user_settings.xml
  6. Ouvrez la Route dans l'espace de modélisation graphique. Dans la vue Deployment (Déploiement) de l'onglet Route, sélectionnez Microservice (Spring Boot) dans la liste Build Type (Type de construction). Sauvegardez la Route.
    Sélectionnez le type de build Microservice (Spring Boot).
  7. Dans la vue Repository, cliquez-droit sur la Route que vous souhaitez créer et sélectionnez Build Route pour ouvrir la boîte de dialogue Build Route.
    Boîte de dialogue Build Route (Construire la Route).
  8. Dans le champ To archive file, parcourez votre système jusqu'au répertoire dans lequel vous souhaitez sauvegarder votre Route.
  9. Dans la zone Route Version, sélectionnez le numéro de version de la Route, si vous en avez créé plus d'une version.
  10. Dans la zone Build Type (Type de construction), sélectionnez Microservice Spring Boot.
  11. Dans la zone des options, sélectionnez :
    • L'option Export as ZIP (Exporter en ZIP) pour exporter la Route vers un fichier .zip, fournissant un dossier externe de configuration et démarrer les scripts afin de lancer le microservice avec le dossier de configuration externe pour Linux (.sh) et pour Windows (.bat). Si cette option n'est pas cochée, la Route est exportée en tant que fichier .jar par défaut.

    • L'option Enable Prometheus metrics endpoint (Activer l'endpoint de métriques Prometheus) pour construire l'endpoint de métriques Prometheus dans le microservice, afin de monitorer l'exécution des Routes, la mémoire de la JVM, la consommation du processeur etc. Par défaut, cette fonctionnalité est un pont entre tous les attributs JMX et les valeurs dans Prometheus. Pour plus d'informations concernant Prometheus, consultez la documentation Prometheus (uniquement en anglais) (en anglais).
  12. Cliquez sur Finish pour valider vos modifications, terminer l'export et fermer la boîte de dialogue. Une fenêtre s'ouvre, vous indiquant que Maven doit être configuré avec une connexion à Internet pour construire le microservice ESB, car certaines bibliothèques doivent être téléchargées depuis le référentiel Maven distant. Le Studio Talend nécessite une connexion à Internet lorsque vous utilisez la fonctionnalité ESB de microservice. Le Studio Talend ne fournit pas de mode complètement hors connexion pour l'opération de construction d'un microservice ESB. Cliquez sur Yes pour passer Maven en mode en ligne.
    Configurer Maven Online.
    Si l'opération Finish vous conduit à une erreur, vous pouvez trouver plus d'informations relatives à cette erreur dans le fichier de log du Studio Talend <Studio_Home>\workspace\.metadata\.log.

Résultats

Un fichier .jar ou .zip pour la Route est créé à l'emplacement défini. Vous pouvez l'exécuter indépendamment du Studio Talend en mode standalone.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.