Projet de rapports BIRT ======================= Préparer l'environnement de developpement ----------------------------------------- Au démarrage d'Eclipse, il est nécessaire de créer un espace de travail qui pourra contenir par la suite (si nécessaire) plusieurs projets de rapport BIRT. Il est conseillé de sélectionner un espace de travail différent du répertoire d'installation de Eclipse BIRT. Cette configuration permettra de changer plus facilement de version logiciel de BIRT tout en conservant les projets déjà créés. Une fois l'espace de travail créé et avant de commencer la création du rapport, un projet de type « BIRT project » doit être créé. Il doit également contenir les deux répertoires suivants : • « reports » : contiendra tous les rapports (fichiers .rptdesign) • « Ressources » : contiendra tous les fichiers et composants qui seront partagés à vos rapports en spécifiant un chemin d'accès relatif depuis ce répertoire. Créer un nouveau projet ~~~~~~~~~~~~~~~~~~~~~~~ Pour créer un projet BIRT, sélectionnez « File > New > Other projects », puis, dans l'assistant, sélectionnez « report project ». .. image:: images/100000000000030C0000029D554D9D2B.png Une fois le projet créé, ajoutez les deux dossiers principaux via un clic droit sur le projet dans l'onglet « navigator » : .. image:: images/1000000000000565000001F097833544.png Pour chaque projet BIRT créé dans cet espace de travail, il sera nécessaire de définir dans les propriétés du projet la localisation du dossier « Ressources » associé Le dossier de ressources ~~~~~~~~~~~~~~~~~~~~~~~~ .. image:: images/10000000000003340000018F33DF4032.png La spécification de ce dossier dans les propriétés du projet permet l'accès aux composants partagés. Ces composants (data sources, data sets, paramètres de rapports, composant graphique, composant des librairies BIRT, mais aussi modèles et images ou fichiers plats stockés dans ce répertoire), seront instanciés dans les rapports (.rptdesign) via le panneau « Ressource Explorer » : Chaque composant importé dans un rapport (.rtpdesign) depuis les ressources partagées sera référencé par un chemin relatif. Ainsi, il sera possible de migrer le projet vers un autre espace de travail ou sur un serveur de reporting Centreon BI sans se préoccuper des chemins d'accès. Par exemple, le fait que l'espace de travail soit situé dans « mes documents/MonProjet » n'a pas d'importance. Seuls les sous-dossiers et fichiers du projet doivent être figés. Pour définir le dossier contenant les ressources partagés dans un projet, faites clic-droit sur votre projet dans le panneau « Navigator » puis cliquez sur « properties ». Définissez l'accès au dossier par : “/Resources/”. La variable ““ est initialisée automatiquement par Eclipse en fonction du projet courant. .. image:: images/10000000000003600000025556C97DB4.png .. Note:: Cette manipulation devra être réalisée à chaque fois : • qu'un nouveau projet est créé • qu'un projet existant est important dans un nouvel espace de travail (« workspace ») Définir la structure du projet ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Avant tout développement, il est important d'identifier et définir des normes pour : • l'arborescence des rapports et ressources • le nommage des dossiers et fichiers • le nommage de composants dans les librairies, modèles et rapports. **Lorsque des normes basiques comme celles-ci ne sont pas respectées, il devient très difficile de maintenir et faire évoluer les projets** Les prochains points de ce chapitre abordent les normes définies depuis Centreon BI 1.5.0. Développez vos rapports en utilisant le modèle fourni par Centreon ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Pour assurer la compatibilité des rapports que vous développez avec Centreon BI, vous devez démarrer le développement de tous vos rapports en utilisant le modèle que nous fournissons. Ce modèle s'appelle "generic_component_script.rpttemplate" et est stocké dans "/usr/share/centreon-bi/Resources/templates" (par défaut). Il est indispensable car il rajoute automatiquement du script nécessaire au fonctionnement de votre rapport sur notre plateforme. Pour être en mesure d'utiliser ce modèle, vous devez : * Récupérer le fichier sur le serveur de reporting et le placer dans le dossier "Resources/template" de votre projet BIRT : "/Resources/templates/generic_component_script.rpttemplate" * Faire un clique droit sur ce fichier et cliquer sur "Register Template with New Report Wizard" .. image:: images/registerTemplate.png * Pour chaque nouveau rapport que vous créez, faites New->Report, choisissez un nom puis cliquez sur "Next" pour accéder à la fenêtre des modèles * Sélectionnez alors le modèle appelé "Component Template" puis cliquez sur "Finish" .. image:: images/componentTemplate.png Votre rapport est près à être développé et sera compatible avec Centreon BI. Rapports (RPTDESIGN) ^^^^^^^^^^^^^^^^^^^^ • Chaque rapport est stocké dans un dossier ou sous-dossier dont la racine est le dossier « reports ». Les noms de ces dossier sont définis selon le type des statistiques traitées : • Capacité • Disponibilité • Performance • Les rapports stockés à la racine du répertoire « reports » sont dépréciés depuis la version 1.5 de Centreon BI • Chaque composant d'un rapport (composant graphique, dataset, …) est issu d'une bibliothèque BIRT. Le rapport réalise en majeure partie l'intégration de ces différents composants • Chaque rapport est créé à partir d'un modèle de rapport BIRT. Ce modèle contient un « scripting » facilitant la gestion des paramètres à sélection de valeurs multiples ainsi que la gestion des thèmes. Ressources ^^^^^^^^^^ Le dossier contenant les ressources partagées de Centreon BI est organisé en sous-répertoires : • images : contient les images utilisées dans le rapport • templates : contient les modèles de rapports BIRT (.rpttemplate) utilisés pour la création de nouveaux rapports • translations: contient les fichiers de traduction des rapports • components : contient toutes les bibliothèques BIRT (.rptlibrary) organisées en sous-dossier selon une logique similaire au rapports (capacité, …). Bibliothèques de composants ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Certaines bibliothèques sont stockées directement dans le dossier « components », sans aucune classification par sous-dossiers. Ces fichiers contiennent des composants ré-utilisés dans des rapports mais également dans d'autres bibliothèques : * « datasources » : contient toutes les sources de données utilisées dans le projet. Évitez de définir des « data sources » dans plusieurs fichiers afin de simplifier la maintenance et la mise en production * « parameters » : contient tous les paramètres de rapports utiles * « masterpages » : stocke les différents master qui sont ré-utilisés dans les rapports Du fait du grand nombre de composants créés dans chaque bibliothèque, il peut être compliqué de naviguer à travers ces fichiers pour retrouver un composant. Pour simplifier cette recherche, il est conseillé de suivre cette méthode : • Quel type de statistique recherchez vous ? ◦ Capacité ? Performance ? Disponibilité ? Ouvrez le sous-dossier correspondant à votre besoin. • Sur quel type d'objet souhaitez vous faire le rapport ? ◦ Hôte ? Un groupe d'hôtes ? Plusieurs groupes d'hôtes ? Vous trouverez cette information dans le nom du fichier « rtplibrary ». • Avez-vous besoin d'un « data set » ? Avec quels paramètres ? ◦ Tous les « data sets » sont listés dans le panneau « data explorer » ◦ le nom de chaque « data set » est préfixé d'un code. Chaque digit de ce code concerne un objet (hostgroup, host, service category, host category, metric, timeperiod, …) et varie de 0 à 2 : ▪ 0 : l'objet n'est pas utilisé en tant que paramètre ▪ 1 : une seule valeur est attendue ▪ 2 : une liste de valeur est attendue • Avez-vous besoin d'un composant graphique ? Avec quels paramètres ? ◦ Tous les composants graphiques sont listés dans le sous-menu « Report Items » de l'onglet « outline » ◦ Le nom de chaque composant commence avec un codage similaire aux noms des « data sets » ◦ Le nom de chaque composant est suffixé avec le type du composant : « chart », « table », « text », etc... Interfacer BIRT avec Centreon BI -------------------------------- Centreon BI permet de planifier et publier les rapports BIRT. Ainsi, une fois que le développement du rapport est terminé, il n'est plus nécessaire d'utiliser Eclipse à chaque fois qu'il est nécessaire d'exécuter le rapport. Les utilisateurs non techniques pourront lancer l'exécution de leurs rapports en quelques clics depuis l'interface Centreon. Voici les étapes permettant d'obtenir ce résultat : 1. Copiez le rapport sur le serveur de reporting. Le dossier principal de Centreon BI contient les dossiers « reports » et « Ressources ». L'arborescence de vos rapports et de vos ressources sur le serveur de reporting doit être similaire à celui de votre projet BIRT Eclipse. 2. Dans le menu « Reporting > Business Intelligence > Report designs » de Centreon, définissez le rapport qui devra être exécuté en définissant les propriétés suivantes : ◦ un nom pour le report design ◦ le chemin du report design sur le serveur ◦ n fichier XML décrivant les paramètres du report design 3. Dans le menu « Reporting > Business Intelligence > Jobs », créer la tâche (job) qui exécutera le report design et compléter les paramètres spécifiques ce dernier. Créer le fichier XML de description des paramètres -------------------------------------------------- Chaque fichier RPTDESIGN que vous allez créer contient differents paramètres. Afin de les afficher à travers l'interface de Centreon BI et avoir la possibilité de les utiliser, il faut définir un fichier XML qui sera lu afin de générer l'onglet de paramètres dynamiquement. quand vous créez un nouveau modèle de rapport sur l'interface Centreon BI, vous devez lui associer le fichier XML des paramètres créé. Trois types d'objet peuvent être définis dans ce XML: * Balises de texte afin de permettre à l'utlisateur d'entrer son propore texte: * Balises de sélection simple: * Balises de sélection multiple: Chacune de ces balises peut avoir plusieurs attributs possibles: +--------------+------------------------------------------------------+----------+------------+-----------------+ | **Attribut** | **Description** | **Text** | **Select** | **Multiselect** | +==============+======================================================+==========+============+=================+ | id | Nom du paramètre dans le rapport ( report parameter) | X | X | X | +--------------+------------------------------------------------------+----------+------------+-----------------+ | title | Description affichée à côté du paramètre | X | X | X | +--------------+------------------------------------------------------+----------+------------+-----------------+ | data | Donnée à afficher dans ce paramètre | | X | X | +--------------+------------------------------------------------------+----------+------------+-----------------+ | size | Taille du champs texte | X | | | +--------------+------------------------------------------------------+----------+------------+-----------------+ Ci-dessous les possibles valeurs pour l'attribut **data**. .. note:: Les listes de sélection simples et multiples sont soumises aux ACLs de Centreon. Un utilisateur ayant des restrictions sur les ressources dans Centreon aura aussi ces restrictions dans Centreon BI +------------------+ | **Valeur** | +==================+ | host | +------------------+ | hostgroup | +------------------+ | hostcategory | +------------------+ | servicegroup | +------------------+ | servicecategorie | +------------------+ | metric | +------------------+ | businessview | +------------------+ | businessactivity | +------------------+ | liveservice* | +------------------+ | timeperiodBA | +------------------+ \*liveservice = période temporelle .. warning:: Si vous souhaitez utiliser notre propre système de récupération de dates et avoir le paramètre date ( cyclique ou à la demande) lié à votre rapport, vous devez utiliser 2 paramètres "connus": "dateStart" and "dateEnd". Voici un exemple du fichier XML associé au rapport (Host-detail-2)::