ALERT installation setup In order to automate the installation process of the ALERT system, the ALERT installation setup is developed. It represents the main starting point in installing the ALERT system. The first prototype of ALERT system required that each ALERT component needs to be installed manually and separately along with its software requirements and configurations. The main purpose of the developed ALERT setup is to integrate these components installation procedures into one, and to install prerequisites and install and configure components as much as possible without user interaction. The ALERT setup allows selective installation of the ALERT components, installation of prerequisites, MySQL data base installation required by selected components and most of the components additional configurations. However, some of the prerequisites like Apache server, Apache Tomcat and MySQL server must be already installed, if they are needed, before running the ALERT installation setup. The ALERT installation setup consists of the following phases: Component selection Prerequisites installation Database installation Component installation ALERT system configuration The ALERT installation setup is developed in a form of a wizard. In the first step of the setup, the user selects the ALERT components that he wants to install on the current machine and a location of the ALERT system installation. Figure 1: Component selection Based on the selected components, the installation setup will recognize witch software prerequisites need to be installed in order which prerequisites are necessary for the selected Page 1 of 10
components to work, their installation will start and progress can be monitored within the provided user interface. If additional user interaction is needed during the prerequisites installation, (like Apache Tomcat installation folder), it will be handled within this step by providing the required information to the system. Figure 2: Prerequisites installation As some of the ALERT components require MySQL database in order to run, the ALERT setup system also includes already prepared scripts execution in order to create any necessary databases and tables. On data base installation step, if there are any databases that need to be created on MySQL server, their names will be listed in the database list. In order to create them, the user will have to provide the information regarding with the connection to the My SQL server: MySQL server name, username, password and port. Page 2 of 10
Figure 3: Database installation After all software prerequisites and databases are installed, the installation of the individual components will start based on the options that were selected in the first step of the setup procedure. The components that are installed will be listed and their current installation status will be displayed. Figure 4: Component installation The last step of the automated ALERT system installation setup will offer the user to configure the installed ALERT components. Before this setup, the user needed to find different configuration files for each component and to change them manually. The ALERT installation setup offers the user all these configurations in one place and instead of changing different Page 3 of 10
configuration files the user will be able to enter necessary information directly in the ALERT setup user interface. Figure 5: Global configuration Figure 6: Component specific configuration If there are any additional configurations that need to be done, but which can t be achieved through the automated setup, the setup will provide to the user a document with the description of additional configurations that are required. Page 4 of 10
Additional components configuration for Linux OS SCM sensor The SCM sensor will notify KESI about the new changes committed to the repository sending emails to an email account. In order to generate these events, it is needed to install a script (known as a hook) in the SCM server. This hook will trigger the sending of a message every time a change is committed. The script differs depending on the type of the SCM. The following sections describe how to configure the hooks for Subversion and Git. Please take into account that for installing and configuring these scripts the user or administrator will need read-write file access privileges in the repository. a) Subversion 1 1. Download the contents from http://github.com/alertproject/sensors $ git clone git://github.com/alertproject/sensors.git sensors 2. Copy the hooks files to the repository folders. $ cp sensors/scm/svn/post-commit <repo>/hooks/ $ cp sensors/scm/svn/mailer.py <repo>/hooks/ $ cp sensors/scm/svn/mailer.conf <repo>/conf/ 3. Edit the configuration 2 file setting the email address, where the notification of the new commots will be sent, and the prefix of the subject using the next pattern [SCM][<URI of the repository]. $vim <repo>/conf/mailer.conf Edit parameters: to_addr= user@example.com commit_subject_prefix=[scm][http://example.com/svn/repo] 4. Activate the hook $ chmod a+x <repo>/hooks/mailer.py $ chmod a+x <repo>/hooks/post-commit b) Git 3 1. Configure the Git properties for sending notifications. As in Subversion, it is needed to set two parameters: the email address for receiving notifications and the prefix of the subject that must follow the next pattern: [SCM] [<URI of the repository>]. $ cd <repo> <repo>$ git config hooks.mailinglist "email@example.com" <repo>$ git config hooks.emailprefix "[SCM] git://example.com/git/repo]" 1 More information about Subversion hooks and other possible configurations can be found in: http://svnbook.red-bean.com/en/1.2/svn.reposadmin.create.html#svn.reposadmin.create.hooks 2 You can also configure other parameters such as your SMTP server: mail_command = /usr/sbin/sendmail 3 More information about Git hooks and other possible configurations can be found in http://gitscm.com/book/en/customizing-git-git-hooks Page 5 of 10
These two above commands will automatically modify the configuration. It's equivalent to manually editing the [hook] section of the configuration text file. 2. Copy the hook 4 in the hooks folder of the repository. <repo>$ cd hooks <repo>/hooks$ cp /usr/share/doc/git-core/contrib/hooks/post-receiveemail post-receive 3. Activate the hook. <repo>/hooks$ chmod a+x post-receive ITS sensor The ITS sensor will notify KESI about new issues or changes in the issue tracking system sending emails to an email address. Since the ITS servers are able to include watchers for a group of issues, the email address used by KESI will be set up as a watcher or CC (those terms depend on the ITS platform) of all the issues of the monitored project. In the case of JIRA issue tracking system an additional step is required. The prefix of the notifications subject has to be set to: [JIRA] [<URL of the tracker>]. It can be done in Outgoing Mail section of the Administration interface. Wiki sensor Atlassian Confluence The following steps are required in order to install the wiki sensor for Atlassian Confluencebased wikis: 1. Open the wiki and log in as a user with administrator rights. 2. In the navigation bar on top of the page, go to Browse->Confluence Admin 3. Select Plugins in the left navigation bar. 4. Select the Install tab and choose Upload Plugin 5. Upload the WikiSensor.jar file and wait until installation has been finished If settings in the plugin need to be changed, the project must be rebuilt. Open your ArticleAdded.java in src/main/java/eu/alert/sensors/, adjust the server settings and rebuild the project using Maven and the included pom file. Mailing list sensor MLSensor Mailing list sensor doesn t need any additional configuration in order to run. Forum sensor Forum sensor doesn t need any additional configuration in order to run. Knowledge extractor for structured information (KESI) Knowledge extractor for structured information (KESI) doesn t need any additional configuration in order to run. Knowledge extractor for unstructured information (KEUI) Knowledge extractor for unstructured information (KEUI) doesn t need any additional configuration in order to run. 4 post-receive script and configuration files are also available in the folder SCM/git of the ALERT sensors repository http://github.com/alertproject/sensors Page 6 of 10
OCELOt OCELOt doesn t need any additional configuration in order to run. Annotex Annotex doesn t need any additional configuration in order to run. Profiler (STARDOM) Profiler doesn t need any additional configuration in order to run. CEP engine CEP enginedoesn t need any additional configuration in order to run. Interaction pattern editor Interaction pattern editor doesn t need any additional configuration in order to run. REST API Pyactivemq Pyactivemq is the library used to interact with the ActiveMQ ESB from Python. The first step is to install the required packages: $sudo apt-get install libboost-python-dev libcppunit-dev uuid-dev libapr1-dev libaprutil1-dev libtool autoconf2.13 The installation of Pyactivemq involves several steps and procedures. The Apache Portable Runtime (APR) tool is required to install Pyactivemq but the one available in a Debian testing installation is newer than the one required by the latest released package of Pyactivemq. It is necessary to bypass the check of the APR version (it requires > 1.3 but the check only passes if it is available 1.3.x, Debian testing has 1.4.x). In the first place, we retrieve the latest release of activemq-cpp-library: $ wget http://archive.apache.org/dist/activemq/activemq-cpp/source/activemqcpp-library-3.0.1-src.tar.gz/pyactivemq/activemq-cpp-library-3.0.1$./autogen.sh Now, we need to edit the configure file in the root folder of the activemq-cpp-library3.0.1 folder to include 1.4.x in the list of supported versions: APR_VER_REGEXES="1\.4\.[0-9] 1\.4\.1[0-9] " APU_VER_REGEXES="1\.4\.[0-9] 1\.4\.1[0-9] " Finally, we compile and install the package: mailto:luis@humus/pyactivemq/activemq-cpp-library-3.0.1$./configure -- prefix=/opt/activemq-cpp -- with-apr=/usr/bin/apr-config --with-apr-util=/usr/bin/apu-config && make/pyactivemq/activemq-cpp-library-3.0.1$ sudo make install Now, we retrieve a copy of pyactivemq: svn export http://pyactivemq.googlecode.com/svn/trunk pyactivemq As we installed activemq-cpp in/opt/activemq-cpp/ it doesn't work. It is needed to edit the setup.py file to reflect this change. Below, we provide the output of a diff operation between the old and the new version of the file, showing the necessary changes: Page 7 of 10
-- setup.py 2012-07-21 17:01:01.159775317 +0200 +++ setup.py.old 2012-03-21 16:11:01.159775317 +0100 @@ -67,7 +67,7 @@ ] else: include_dirs = [ - '/opt/activemq-cpp/include/activemq-cpp-3.0.1' + '/opt/activemq-cpp-3.0.1/include/activemq-cpp-3.0.1' ] libraries = [ 'activemq-cpp', @@ -75,11 +75,11 @@ 'boost_python' ] library_dirs = [ - '/opt/activemq-cpp/lib' + '/opt/activemq-cpp-3.0.1/lib' ] extra_compile_args = [] extra_link_args = [ - '-Wl,-rpath,/opt/activemq-cpp/lib' + '-Wl,-rpath,/opt/activemq-cpp-3.0.1/lib' ] define_macros = [ ('BOOST_PYTHON_NO_PY_SIGNATURES', 1), Finally, we install the module: pyactivemq$ python setup.py build pyactivemq$ python setup.py install Recommendation service Recommendation service doesn t need any additional configuration in order to run. Action service Action service doesn t need any additional configuration in order to run. Metadata service Metadata service doesn t need any additional configuration in order to run. ALERT integrated UI ALERT integrated UI doesn t need any additional configuration in order to run. Project Evolution visualization Schedule the generation of data to get an updated version of the visualization graphs. For instance, in Linux you can use cron tool. 1. Run: $ crontab -e 2. Edit the file adding the next line. This will run this job every hour 5. hourly /path/to/swscopio_gen_data.sh 5 For more information about how to configure cron, please read the man page of this tool. Page 8 of 10
Additional components configuration for Windows OS SCM sensor SCM sensor is not available for Windows OS. ITS sensor ITS sensor for Windows OS is configured following the same step s that in Linux OS case. Wiki sensor Atlassian Confluence The following steps are required in order to install the wiki sensor for Atlassian Confluencebased wikis: 1. Open the wiki and log in as a user with administrator rights. 2. In the navigation bar on top of the page, go to Browse->Confluence Admin 3. Select Plugins in the left navigation bar. 4. Select the Install tab and choose Upload Plugin 5. Upload the WikiSensor.jar file and wait until installation has been finished If settings in the plugin need to be changed, the project must be rebuilt. Open your ArticleAdded.java in src/main/java/eu/alert/sensors/, adjust the server settings and rebuild the project using Maven and the included pom file. Mailing list sensor MLSensor Mailing list sensor is not available for Windows OS. Forum sensor Forum sensor doesn t need any additional configuration in order to run. Knowledge extractor for structured information (KESI) Knowledge extractor for structured information (KESI) doesn t need any additional configuration in order to run. Knowledge extractor for unstru ctured information (KEUI) Knowledge extractor for unstructured information (KEUI) doesn t need any additional configuration in order to run. OCELOt OCELOt doesn t need any additional configuration in order to run. Annotex Annotex doesn t need any additional configuration in order to run. Profiler (STARDOM) Profiler doesn t need any additional configuration in order to run. CEP engine CEP engine doesn t need any additional configuration in order to run. Interaction pattern editor Interaction pattern editor doesn t need any additional configuration in order to run. REST API Search Service is not available for Windows OS. Page 9 of 10
Recommendation service Recommendation service doesn t need any additional configuration in order to run. Action service Action service doesn t need any additional configuration in order to run. Metadata service Metadata service doesn t need any additional configuration in order to run ALERT integrated UI ALERT integrated UI doesn t need any additional configuration in order to run. Project Evolution visualization Project Evolution visualization is not available for Windows OS. Page 10 of 10