Mirth Connect è un motore di integrazione open source utilizzato principalmente nel dominio dell'assistenza sanitaria.
Ciò supporta vari standard sanitari (HL7, XML, EDI/X12, DICOM ecc.) che aiuteranno le aziende a integrare sistemi diversi e consentiranno loro di parlare tra loro in un linguaggio comune.
Il motore di interfaccia MirthConnect supporta anche vari protocolli standard (ad esempio, TCP, HTTP, JDBS, SFTP, ecc.) per connettere due sistemi.
Per impostazione predefinita, quando installi mirthconnect utilizza Apache Derby come motore di archiviazione. Tuttavia, supporta praticamente tutti i database più diffusi, inclusi MySQL/MariaDB, PostgreSQL, Oracle e SQL Server.
In questo tutorial, spiegheremo come installare il software open source MirthConnect e configurarlo per comunicare con il database MySQL su piattaforma Linux.
I seguenti connettori e formati supportati nella versione open source:
- Connettori:TCP, MLLP, HTTP, FTP, DICOM, SOAP, SQL, JMS, File System, HTTPS, POP3, IMAP, ASTM, RS232
- Formati:XML, HL7, DICOM, NCPDP, X12, testo delimitato, binario non elaborato
Recentemente NextGen ha acquisito mirthconnect. La versione commerciale supporta alcuni formati aggiuntivi come CCD, C-CDA, ASTM. Inoltre, la versione commerciale ha alcune estensioni aziendali avanzate. Ad esempio:Gestione SSL, Controllo accessi basato sui ruoli, Avvisi avanzati, Cronologia canali, Autenticazione LDAP, Generatore di messaggi HL7.
In questo tutorial spiegheremo come installare la versione open source di Mirth Connect su database MySQL.
Fase 1:Pre-Req:installa Java JDK
Assicurati di avere JDK 1.8 installato sul tuo sistema come mostrato di seguito.
# java -version openjdk version "1.8.0_102" OpenJDK Runtime Environment (build 1.8.0_102-b14) OpenJDK 64-Bit Server VM (build 25.102-b14, mixed mode)
Se non hai installato JDK, usa yum per installarlo come mostrato di seguito:
yum -y install java-1.8.0-openjdk
Dovresti vedere i seguenti pacchetti relativi a JDK installati sul tuo sistema:
# rpm -qa | grep -i jdk java-1.8.0-openjdk-headless-1.8.0.102-1.b14.el7_2.x86_64 java-1.8.0-openjdk-1.8.0.102-1.b14.el7_2.x86_64 java-1.8.0-openjdk-devel-1.8.0.102-1.b14.el7_2.x86_64
Fase 2:installa MySQL/MariaDB
Come accennato in precedenza, per impostazione predefinita mirthconnect viene fornito con Apache Derby come database predefinito.
Ma, in questo tutorial, installeremo e configureremo il database MySQL/MariaDB e lo useremo per mirthconnect.
Installa il server MySQL / MariaDB come mostrato di seguito. Per questo, dovresti installare i seguenti due pacchetti mariadb.
yum install mariadb yum install mariadb-server
Nota:se stai utilizzando una versione precedente di distribuzione Linux, in cui il pacchetto mariadb-server non è disponibile nel repository yum, installa il pacchetto mysql-server come mostrato di seguito.
yum install mysql-server
Una volta installato MariaDB, vedrai i seguenti pacchetti sul tuo sistema:
# rpm -qa | grep -i maria mariadb-5.5.50-1.el7_2.x86_64 mariadb-server-5.5.50-1.el7_2.x86_64 mariadb-libs-5.5.50-1.el7_2.x86_64
Una volta installato mariadb, avvialo e assicurati che funzioni correttamente.
systemctl start mariadb systemctl status mariadb
Potresti anche voler eseguire quanto segue per configurare alcune impostazioni di sicurezza per l'installazione di MySQL/MariaDB. Questo assegnerà anche una password di root per il tuo database.
/usr/bin/mysql_secure_installation
Fase 3:crea un database MySQL per MirthConnect
Creiamo un database chiamato "thegeekstuff", che verrà utilizzato dall'installazione di mirthconnect.
Per questo, usa il comando mysql con il nome utente e la password di root di mysql come mostrato di seguito.
# mysql -u root -pMySQLRootPwd MariaDB [(none)]> create database thegeekstuff;
Una volta creato il database, crea un utente chiamato "thegeekstuff" e assegna una password per questo. Questo account verrà utilizzato nella configurazione di mirthconnect per parlare con il database.
MariaDB [(none)]> grant all on thegeekstuff.* to 'thegeekstuff'@'localhost' identified by 'DBSecretPwd!' with grant option; MariaDB [(none)]> flush privileges;
In questa fase, non vedrai alcuna tabella relativa a mirthconnnect in questo database. Ma, una volta installato mirthconnect, vedrai più tabelle qui.
# mysql -u root -pMySQLRootPwd MariaDB [(none)]> use sysadmin; Database changed MariaDB [sysadmin]> show tables; Empty set (0.00 sec)
Fase 4:scarica e installa Mirth Connect
Scarica mirthconnect da qui.
Puoi installare mirthconnect usando uno qualsiasi di questi formati:1) RPM 2) tar.gz 2) Installer
Per questo tutorial, utilizzeremo il formato tar.gz dell'installazione di mirthconnect.
Per prima cosa, ottieni il link per il download per tar.gz e usa il comando wget sul tuo server come mostrato di seguito.
cd ~ wget http://downloads.mirthcorp.com/connect/3.4.2.8129.b167/mirthconnect-3.4.2.8129.b167-unix.tar.gz
Una volta scaricato, decomprimilo come mostrato di seguito.
tar xvfz mirthconnect-3.4.2.8129.b167-unix.tar.gz
Per impostazione predefinita, questo creerà la directory "Mirth Connect" nella directory corrente.
Per gestirlo meglio, spostalo nella directory /opt, rimuovi anche lo "spazio" nel nome e rendi tutto minuscolo, il che è più facile da gestire in ambiente Linux.
In questo esempio, rinomineremo "Mirth Connect" in "mirthconnect" e allo stesso tempo lo sposteremo nella directory /opt come mostrato di seguito.
mv Mirth\ Connect/ /opt/mirthconnect
Nota:se desideri installarlo dal file RPM, procedi come segue:
cd ~ wget http://downloads.mirthcorp.com/connect/3.4.2.8129.b167/mirthconnect-3.4.2.8129.b167-linux.rpm
Installa il file RPM mirthconnect utilizzando il comando rpm come mostrato di seguito:
rpm -ivh mirthconnect-3.4.2.8129.b167-linux.rpm
Fase 5:modifica i file di configurazione di MirthConnect
Il file principale delle proprietà di mirthconnect è mirth.properties che si trova nella directory /opt/mirthconnect/conf.
vi /opt/mirthconnect/conf/mirth.properties
In questo file, modifica i seguenti parametri:
http.port = 8080 https.port = 8443 database = mysql database.url = jdbc:mysql://localhost:3306/thegeekstuff database.username = thegeekstuff database.password = DBSecretPwd!
In quanto sopra:
- http.port – 8080 è la porta HTTP mirthconnect predefinita. Puoi modificare questo valore in modo che corrisponda al tuo ambiente.
- https.port – 8443 è la porta HTTP mirthconnect predefinita. Puoi modificare questo valore in modo che corrisponda al tuo ambiente.
- database – Di default questo dirà derby. Cambia questo valore in mysql come mostrato sopra.
- database.url – Poiché stiamo usando il database MySQL, imposta questo database.url sul valore mostrato sopra. Per impostazione predefinita, questo punterà al database derby predefinito. Modifica questo valore. Assicurati che alla fine dell'URL abbia il nome del database mysql che hai creato in precedenza. Se stai copiando/incollando questo valore dalle righe di commento del file di configurazione, avrà mirthdb qui. Dovresti cambiarlo nel nome del tuo database.
- database.username:impostalo sull'utente mysql che abbiamo creato in precedenza.
- database.password:imposta questo valore sulla password corrispondente per il tuo nome utente mysql.
Fase 6:avvia MirthConnect
Ora avvia mirthconnect come servizio usando il comando mcservice.
# /opt/mirthconnect/mcservice start Starting mcservice # /opt/mirthconnect/mcservice status The daemon is running.
Puoi anche fare un ps e controllare il processo "mcservice" in esecuzione in background come mostrato di seguito.
# ps -ef | grep mcservice root 26665 1 0 07:41 pts/2 00:01:57 /usr/bin/java -Dinstall4j.jvmDir=/usr -Dexe4j.moduleName=/opt/mirthconnect/mcservice -Dinstall4j.launcherId=144 -Dinstall4j.swt=false -server -Xmx256m -Djava.awt.headless=true -Di4j.vmov=true -Di4j.vmov=true -Di4j.vpt=true -classpath /opt/mirthconnect/.install4j/i4jruntime.jar:/opt/mirthconnect/mirth-server-launcher.jar com.install4j.runtime.launcher.Launcher start com.mirth.connect.server.launcher.MirthLauncher false false true true false true true 0 0 20 20 Arial 0,0,0 8 500 version 3.4.2.8129.b167 20 40 Arial 0,0,0 8 500 -1
Nota:quando avvii mirthconnect per la prima volta, si collegherà al database MySQL e creerà tutte le tabelle richieste.
Ora, se ti connetti a mysql, vedrai che ha creato 13 nuove tabelle necessarie per il corretto funzionamento di mirthconnect.
MariaDB [thegeekstuff]> show tables; +-----------------------+ | Tables_in_thegeekstuff| +-----------------------+ | ALERT | | CHANNEL | | CHANNEL_GROUP | | CODE_TEMPLATE | | CODE_TEMPLATE_LIBRARY | | CONFIGURATION | | D_CHANNELS | | EVENT | | PERSON | | PERSON_PASSWORD | | PERSON_PREFERENCE | | SCHEMA_INFO | | SCRIPT | +-----------------------+ 13 rows in set (0.00 sec)
Passaggio 7:aggiungi Mirthconnect a Systemd
Se stai utilizzando CentOS 7 (o RedHat), potresti voler aggiungere mirthconnect all'avvio del sistema.
Per questo, crea il seguente file mirthconnect.service
# vi /usr/lib/systemd/system/mirthconnect.service [Unit] Description=MirthConnect After=network.target [Service] Type=forking User=root Group=root ExecStart=/opt/mirthconnect/mcservice start ExecStop=/opt/mirthconnect/mcservice stop ExecRestart=/opt/mirthconnect/mcservice restart TimeoutSec=60 [Install] WantedBy=multi-user.target
Nota:se hai installato mirthconnect come utente diverso da root, modifica di conseguenza l'utente e il gruppo nel file sopra.
Successivamente puoi utilizzare systemctl per avviare e interrompere mirthconnect come mostrato di seguito.
systemctl start mirthconnect systemctl stop mirthconnect
Per farlo partire automaticamente al riavvio del server, abilita questo server di sistema per l'avvio come mostrato di seguito.
systemctl enable mirthconnect
Fase 8:accedi all'amministratore MirthConnect
Puoi utilizzare il seguente URL HTTP o HTTPS:
- http://{tuo-indirizzo-ip}:8080
- https://{tuo-indirizzo-ip}:8443
L'interfaccia utente di Mirth Connect avrà le seguenti due opzioni:
- MirthConnect Administrator:avvierà l'interfaccia utente dell'amministratore utilizzando java webstart.
- Accedi al dashboard web:se hai avviato l'URL con http, verrà visualizzato il pulsante "Accedi al sito protetto". Fare clic su quello per utilizzare semplicemente mirthconnect dal browser. Se utilizzi l'URL HTTPS, questo mostrerà la casella di testo del nome utente e della password qui.
Il nome utente e la password predefiniti di mirthconnect sono admin/admin.
Quello che segue è lo screenshot della dashboard web di Mirth Connect:
Quando fai clic sul pulsante webstart "Avvia amministratore mirthconnect", questo scaricherà un file chiamato "webstart.jnlp" sul tuo sistema. Fare doppio clic su questo per avviare il webstart.
La prima volta, verrà avviata una finestra di dialogo che dice "Verifica dell'applicazione". Questo mostrerà anche quale mirthconnect sta iniziando mostrando l'URL completo della posizione di mirthconnect che sta avviando.
Successivamente, Java visualizzerà un messaggio di avviso e ti chiederà "Vuoi eseguire questa applicazione". Fare clic su "Esegui". Questo mostrerà finalmente la seguente casella di accesso a mirthconnect. Per impostazione predefinita, la colonna del server verrà popolata con l'URL corretto. Se non vedi i valori corretti qui, inserisci questo:https://{your-ip-address}:8443
Inserisci il nome utente e la password. Quando lo fai per la prima volta, il nome utente e la password sono admin.
La prima volta che accedi, questo ti costringerà a cambiare la password di amministratore.
Infine, verrà visualizzata la dashboard dell'amministratore di Mirthconnect come mostrato di seguito, da qui puoi gestire il mirthconnect creando e gestendo i canali.
Risoluzione dei problemi di avvio di Mirth Connect
Se mirthconect non si avvia correttamente, controlla i seguenti file di registro di mirth per eventuali problemi.
tail -100 /opt/mirthconnect/logs/mirth.log
Inoltre, per scopi di debug, potresti voler disabilitare temporaneamente firewalld e selinux per assicurarti che non stiano bloccando mirthconnect per qualche motivo.
Per fermare il firewalld, procedi come segue:
systemctl stop firewalld
Disattiva temporaneamente SELinux come mostrato di seguito:
setenforce 0
Dopodiché, riavvia mirthconnect e verifica se si avvia correttamente.
Struttura della directory di Mirth Connect
Per impostazione predefinita, nella directory di installazione di /opt/mirthconnect, vedrai le seguenti directory:
- conf – Tutti i file di configurazione di mirthconnect saranno qui
- webapps:questa è la directory esposta dal server web mirthconnect per ospitare le webapp
- server-lib – Tutti i file della libreria del server mirthconnect saranno qui
- public_html – Directory esposta dal server web mirthconnect per ospitare file html
- manager-lib – Questa directory conterrà tutte le librerie utilizzate da Mirthconnect Server Manager
- estensioni:tutte le librerie e i metadati utilizzati dai tuoi plug-in e connettori saranno qui
- docs – Directory dei documenti
- custom-lib – In questa directory, come suggerisce il nome, puoi inserire tutti i tuoi file di libreria personalizzati. Queste librerie verranno caricate sul server mirthconnect durante l'avvio.
- cli-lib – Le librerie dell'interfaccia a riga di comando di Mirthconnect saranno in questa directory
- client-lib – Questo avrà le librerie dell'amministratore di mirthconnect
Oltre alla directory sopra, vedrai anche i seguenti file:
- mcservice.vmoptions e mcserver.vmoptions – Impostazioni della memoria Java per Mirthconnect
- mcservice – Utilizzato per avviare, interrompere e visualizzare lo stato di Mirth Connect Service Demonon
- mcserver – Se non stai utilizzando l'opzione di servizio, usala per avviare Mirth Connect in una modalità non di servizio.
- mcmanager – Questo è il server manager di mirthconnect
- mccommand – Utilità da riga di comando Mirthconnect
- mirth-server-launcher.jar, mirth-manager-launcher.jar, mirth-cli-launcher.jar – File jar utilizzati rispettivamente da mirth connect server, manager e cli