123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405 |
- iTop - version 2.0.2 - 11-Dec-2013
- Readme file
- 1. ABOUT THIS RELEASE
- 2. INSTALLATION
- 2.1. Requirements
- 2.2. Install procedure
- 2.3. CRON
- 2.4. Upgrading from 2.0.x
- 2.5. Migration from 1.x versions
- 3. FEATURES
- 3.1. Changes since 2.0.1
- 3.2. Known limitations
- 3.3. Known issues
- 1. ABOUT THIS RELEASE
- ==================
- Thank you for downloading the 18th packaged release of iTop.
- This version is a maintenance release, with quite a few bug fixes and a few enhancements.
- The documentation about iTop is available as a Wiki: http://www.combodo.com/wiki
- iTop is released under the AGPL (v3) license. (Check license.txt in this directory).
- The source code of iTop can be found on SourceForge: https://sourceforge.net/p/itop/code/
- 1.1 What's new?
- ---------------------------
- This version brings a number of bug fixes since 2.0.1 and a few enhancements, namely:
- - Modelization of VLANs on Subnet and Physical Interfaces
- - Brand new User Portal look and feel (no change in the behavior)
- - Forgot your password? Regain access to iTop without bothering an administrator
- - Automatic refresh of the lists in the dashboards, and for the shortcuts
- - Scalability: better support of large volumes of tickets, and in general with large volumes of data
- - An about box: displays information that will help your support provider (versions, installed modules, etc.)
- ... and about 70 bug fixes!
- 1.2 Should I upgrade to 2.0.2?
- -------------------------------
- Considering that iTop 2.0.2 is fully compatible with iTop 2.0.x and the number of bugs fixed, we recommend you to upgrade.
- Be aware that the User Portal appearance has significantly been changed.
- 1.3 Special Thanks To:
- -----------------
- Bruno Bonfils for his guidance about LDAP and authentication.
- Randall Badilla Castro and Miguel Turrubiates for the Spanish translation.
- Jonathan Lucas, Stephan Rosenke and David Gümbel from ITOMIG GmbH, for the German translation.
- Christian Lempereur and Olivier Fouquet for their feedbacks.
- Everaldo Coelho and the Oxygen Team for their wonderful icons.
- The JQuery team and all the jQuery plugins authors for developing such a powerful library.
- Phil Eddies for the numerous feedbacks provided, and the first implementation of CKEdit
- Marco Tulio and Bruno Cassaro for the Portuguese (Brazilian) translation
- Vladimir Shilov and Shamil Khamit for the Russian translation
- Izzet Sirin for the Turkish translation
- Deng Lixin for the Chinese translation
- Marialaura Colantoni for the Italian translation
- Schlobinux for the fix of the setup temporary file verification.
- Gabor Kiss for the Hungarian translation
- Tadashi Kaneda, Shoji Seki and Hirofumi Kosaka for the Japanese translation
- Antoine Coetsier for the CAS support and tests
- Vincenzo Todisco for his contribution to the enhancement of the webservices
- Stephan Rickauer, Tobias Glemser and Sabri Saleh for their consulting about iTop security
- Claudio Cesar Sanchez Tejeda for his contribution to bug fixes on the export and data synchronization
- Bruno Cornec for his support and contribution to the Linux packaging of iTop
- 2. INSTALLATION
- ============
- 2.1. Requirements
- ------------
- Server configuration:
- iTop is based on the AMP (Apache / MySQL / PHP) platform and requires PHP 5.2 and
- MySQL 5. The installation of iTop does not require any command line access to the
- server. The only operations required to install iTop are: copying the files to the
- server and browsing web pages. iTop can be installed on any web server supporting
- PHP 5.2: Apache, IIS, nginx...
- End-user configuration:
- Although iTop should work with most modern web browsers, the application has been
- tested mostly with Firefox 3+, IE8, IE9, Safari 5 and Chrome. iTop was designed for
- at least a 1024x768 screen resolution. For the graphical view of the impact analysis,
- Flash version 8 or higher is required.
- 2.2. Install procedure
- -----------------
- 1) Make sure that you have a properly configured instance of Apache/PHP/MySQL running
- 2) Unpack the files contained in the zipped package, and copy the content of the "web"
- directory in a directory served by your web server.
- 3) Check the access rights on the files/folders: the setup needs to have write access
- either to the directory where iTop is installed or to the following subdirectories
- (create them if needed)
- - conf
- - data
- - env-production
- - log
- 4) Point your web browser to the URL corresponding to the directory where the files
- have been unzipped and follow the indications on the screen.
-
- If you wish to re-launch the installation process (for example in order to install
- more modules), just make sure that the configuration file (located at <itop>/conf/production/config-itop.php)
- is writable by the web server (on Windows: remove the "read-only" flag, on Linux
- adjust the rights of the file) and point your browser to <itop>/setup/.
- 2.3. cron.php
- --------
- The following features will require the activation of CRON.PHP:
- - asynchronous emails. By default, this option is disabled. To enable it, set 'email_asynchronous' to 1 in the configuration file.
- - check ticket SLA. Tickets reaching the limits will be passed into Escalation TTO/TTR states.
- More information into the Wiki: https://sourceforge.net/apps/mediawiki/itop/index.php?title=Cron.php
- You can get a status of the cron "tasks" with the command:
- php cron.php --auth_user=admin_login --auth_pwd=admin_pwd --status_only=1
- The output will look as shown below:
- +---------------------------+---------+---------------------+---------------------+--------+-----------+
- | Task Class | Status | Last Run | Next Run | Nb Run | Avg. Dur. |
- +---------------------------+---------+---------------------+---------------------+--------+-----------+
- | CheckStopWatchThresholds | active | 2013-03-28 10:32:27 | 2013-03-28 10:32:37 | 51 | 0.317 s |
- | EmailBackgroundProcess | active | 2013-03-28 10:32:27 | 2013-03-28 10:32:57 | 12 | 7.089 s |
- | ExecAsyncTask | active | 2013-03-28 10:32:27 | 2013-03-28 10:32:29 | 51 | 0.032 s |
- +---------------------------+---------+---------------------+---------------------+--------+-----------+
- 2.4. Upgrading from 2.0.x
- --------------------
- The version 2.0.2 if fully compatible with 2.0.0 and 2.0.1. Due to few database changes,
- you must run the setup when upgrading (whatever the original version).
- If the location of mysql binaries is in the "path", the setup proposes to perform a full backup
- of iTop (database + configuration file) using mysqldump.
- Here is how to upgrade, step by step, a 2.0.x instance of iTop:
- 1) Do NOT overwrite the files from the previous version. Expand the content of the "web" directory of
- the new package into a new directory on the web server.
- 2) Check the access rights on the files/folders: the setup needs to have write access either to the
- whole directory where iTop is installed or to the following subdirectories (create them if needed)
- - conf
- - data
- - env-production
- - log
- 3) Point your web browser to the URL corresponding to the new location. You should see the setup screen.
- 4) When prompted (At step 2 of the installation), choose "Upgrade an existing instance"
- 5) Either enter the path (on the disk) to the previous instance, or supply the needed credentials.
- 6) Run the setup to completion. Once this is done you can connect to your upgraded iTop.
- 7) To replace the old instance of iTop with the newly installed one:
- Rename the directories to switch the locations
- Edit the new configuration file (now located at <itop>/conf/production/config-itop.php) and change the
- value of the "application_url" parameter.
- 2.5. Migrating from 1.x versions
- ---------------------------
- The setup is designed to upgrade existing 1.x instances of iTop automatically. In case the instance was
- customized (for example by altering its data model), the installation process will detect the modifications
- (by scanning the source files and comparing them with the manifest) and will prompt either to keep the
- modifications or to discard them.
- If the location of mysql binaries is in the "path", the installation proposes to perform a full backup
- of iTop (database + configuration file) using mysqldump.
- Here is how to upgrade, step by step, a 1.x instance of iTop.
- 1) Do NOT overwrite the files from the previous version. Expand the content of the "web" directory of
- the new package into a new directory on the web server.
- 2) Check the access rights on the files/folders: the setup needs to have write access either to the
- directory where iTop is installed or to the following subdirectories (create them if needed)
- - conf
- - data
- - env-production
- - log
- 3) Point your web browser to the URL corresponding to the new location. You should see the setup screen.
- 4) When prompted (At step 2 of the installation), choose "Upgrade an existing instance"
- 5) Enter the needed credentials. It is not mandatory to supply the location (on the disk of the server)
- where the previous instance was installed but, by doing so, you let the installation find the credentials
- (by looking at the previous configuration file) and also perform additional checks, for instance, to
- detect any customization that you may have made to iTop.
- 6) Run the setup to completion. Once this is done you can connect to your upgraded iTop.
- 7) To replace the old instance of iTop with the newly installed one:
- Rename the directories to switch the locations
- Edit the new configuration file (now located at <itop>/conf/production/config-itop.php) and change the
- value of the "application_url" parameter.
- That's it.
- 3. FEATURES
- ========
- 3.1. Changes since 2.0.1
- -------------------
- This maintenance version consists in a mix of bug fixes and enhancements.
- Enhancements
- --------------------
- - Modelization of VLANs on Subnet and Physical Interfaces
- - User Portal:
- * Brand new look and feel (no change in the behavior)
- * Capability to manage both User Request and Incidents by setting portal_tickets to 'UserRequest,Incident' -see Portal/readme.txt
- - Forgot your password? Regain access to iTop without bothering an administrator
- - Automatic refresh of the lists in the dashboards, and for the shortcuts
- Usability
- --------------------
- Added buttons to check/uncheck all options at once in multi selects inside search forms.
- Better UI to manage direct linksets: added the ability to provide the "reverse query" by specifying a '<filter>' tag on AttributeLinkedSet.
- Scalability
- --------------------
- No time limit for long operations like: Bulk delete, CSV import (interactive) and Bulk modify
- Speedup the display of lists of tickets (large volumes)
- Speedup the display of object details (long history track)
- For technical details: see tickets #783, #233 and #466
- JSON/REST API (new version: 1.1)
- --------------------------------
- #767 Reconciliations must be made on strict criteria
- #758 Key given in clear in the returned objects (incremented the API verion to 1.1)
- + core/create and core/update, allow to reset an external key (0)
- Data model fixes/changes
- ------------------------
- Added VLANs on Subnet and Physical Interfaces (user rights: Configuration Managers)
- Added a version for Documents
- #800 No need to track that last update has changed each time the ticket gets updated (common to all types of tickets)
- Prevent Support agent to create ticket for obsolete Services and Service sub categories
- Remove duplicate display of attribute service provider
- #792 Duplicate entries in the parent/child tickets when updating the case log and applying a stimulus (e.g. Close the WO) at the same time.
- #805 Make sure tickets are named on their id (concurrent access was not taken into account)
- #804 tickets' highlighting is now based on the computation performed by the stopwatch, in order to support non 24x7 working hours
- #754 Prevent UserRequests to have themselves set as Parent Request (and same for Incidents)
- Modify Sample data for Service categories to set them to status "production" by default
- #768 Avoid to select obsolete service and service sub categories in the portal
- #789 Add up to 12 Digit for a IPInterface
- #755 Prevent modification of CIs and Contacts list for UserRequest and Incidents
- #742 Allow portal user to modify a ticket when it is pending
- #739 Prevent Support Agents from settings a UserRequest to status "Pending"
- #751 Check that class Logical Volume exists when checking dependencies of a Server + Add attribute Subnet name on Subnet element
- Moved definition of the delivery model of an organization from itop-config-mgmt to itop-service-mgmt module.
- New pattern accepting the new global Top Level Domains (gTLD)
- Allow "Support Agents" to put an Incident in "Pending" state.
- #747: protects against the non-existence of the UserRequest class (which is not always installed).
- Allow Support Agents to perform "wait for approval" on a UserRequest ticket.
- #757 UserRequest to Problem/Change relation should be N:M, not 1:N
- #837 Remove [+] button on external keys where it's not meaningful
- + button had been removed for all ExternalKey having a complex filter defined
- #835 Remove dependency between ticket and Delivery model
- #834 Add IP for Virtual Machine
- #824 Change ranking in CI Overview dashboard
- #836 Adding linkset "applicationsolution_list" in details list
- Miscellaneous fixes
- -------------------
- Localization: French, German, Spanish and Portuguese (BR) have been reviewed. See #832, #562 and #760.
- Compiler
- - added "constants"
- - added brand management
- - safe compilation (works in a temporary directory, on success then move it into env-production)
- - possibility to introduce a delta (not in a module) at compile time
- - allow to set the flags enable_class/enable_action etc. for a TemplateMenuNode (already taken into account at runtime)
- - added indexes
- Added a demo mode (config: demo_mode = true). In that mode, logins get read-only (even for admins)
- #785 Share the results of a query phrase (preview of the results in the query details page -iif it has NO parameter)
- #783 Added the placeholder $this->xxx_list$ for emailing (names separated by a new line, truncated to 100 items)
- Reviewed the instrumentation to help in tuning the performance (added a message in the admin banner when logging is active + measure the impact of object reloads)
- #771: better display for "edit in place".
- #795 Issue when using the actual (id) value of an external key as a reconciliation field
- #741 Complete localization of the CSV import confirmation dialog
- #790 Only report as installed the modules from the previous installation, not all previous installations.
- #738 Adding a space at the end of the mailto: URL to make it better recognized by mail clients (namely Outlook)
- #791 Protect against single quotes in localized strings...
- #777 mandatory fields that are external keys are now displayed with a star before the arrow: ExtkeyName*->ReconciliationField. In import the old syntax is supported as well.
- #769 Title of pies and charts are not consistent with the title of other dashlets
- #794 Could not export the field friendlyname in format 'spreadsheet'
- #793 provide the default '=' and '!=' operators for all types of Computed Fields.
- #773 Display boolean values from the stop watches as yes/no (localized, like enums) + took the opportunity to enable the export in spreadsheet format
- #762 Remove wrong fields approval_date approval_comments for a Routine change
- Retrofit the useful DoPostRequest function which was used (and defined) in several extensions.
- Added support of different (sub)classes of notifications in the "Notifications" tab on an object.
- Fix for properly computing the default choices in case of upgrade...
- #745 Default menu is not computed correctly (depends on the customizations made to the menu -> order of declaration)
- The login web page must NOT be cached by the web browsers
- #774 Sort the enums in the selection drop-down box (search forms) -initially based on the declaration order
- #782: preview (as a tooltip) for image attachments.
- #784 Data sync: display the attribute code (as well as its label in the user language)
- #781 Plain text dashlet shown on one single line
- #779 It is possible to record a wrong OQL in the phrase book, but then it cannot be edited anymore!
- Internal: failed authentication to return error 401 instead of prompting the end-user (to be exploited by the ajax calls)
- Logoff: display the message in the user language (used to be 100% english)
- Generalized the option tracking_level to any kind of attributes. Defaults to 'all', can be set to 'none' to disable the change tracking on a single attribute (LinkSets still have the same allowed values: none, list, details and all).
- Protect the deletion of objects with very long friendly names
- Cosmetics on the login web page
- Allow for comparisons of the module's versions in the expression of dependencies. For example one can now say "itop-config-mgmt/>=2.0.2" for a dependency.
- Internal- ModelFactory: needed / define_if_not_exists were not equivalent
- #763 Could not use "configure this list" once a stop watch has been added to the list, which is a pitty because such attributes are not aimed at being displayed in lists!
- Fixed bug (wrong DB charset after invoking AnalyzeInstallation!)
- Load structural data for all selected modules indepently of:
- - the load of sample data
- - first install or upgrade
- Management of environments: the banner must be injected by the mean of iPageUIExtension
- Module installation information always loaded within the meta model
- Make the logo transparent (background removal)
- CRON:
- - report that CRON is already running BEFORE saying that the DB is read-only (re-entrance during an operation done in the background)
- - protection against re-entrance now relies on a bullet-proof mutex. Also added the option 'debug=1' to output the call stack in case an exception occurs (not always because of passwords being shown in the call stack)
- - reschedule at startup IIF the task is inactive or it is planned in the future
- - exit gracefully if iTop not yet installed
- - handle tasks scheduled at given date/time (as opposed to a task being executed more or less continuously).
- New mechanism: a module page can be accessed by the mean of a canonical URL (utils::GetAbsoluteUrlModulePage to build the proper URL)
- #752 Notifications sent several times (or too late) when MySQL is hosted on another server
- Setup: Source dir recorded with a trailing backslash under windows
- Restored the original behavior of itop-sla-computation (if present, then it becomes the default working hour computer)
- Improved the error reporting for the backup (in case mysqldump fails with a single error, then the error is displayed directly)
- New verb "AfterDatabaseSetup" for performing installation tasks after the completion of the DB creation (+predefined objects & admin account)
- #746 allow adding an AttributeBlob with is_null_allowed = true to an existing Data Model. (same issue fixed also for AttributeOneWayPassword).
- Properly handle nested forms in "PropertySheet" and "read-only" mode
- Bug fix: validation was broken when the first fields were not Ok.
- Export the content of the CaseLogs in "spreadsheet" format, with some tricks to preserve the formatting in Excel.
- Forms enhancements:
- - The current value of a field is automatically excluded from the forbidden values
- - Several levels of subforms can be nested, even when displaying as a property sheet
- - Sortables fields re-implemented based on a widget.
- - Specify forbidden values + message to explain the issue(toolip) (fiwed a bug on the previous implementation, causing a javascript error, hence a stopper regression due to missing event binds)
- - Dialog: specify an introduction message
- Protect against non existing reconciliation keys...
- Completed the move of dashboards from separate definition files (e.g. overview.xml) into data model files (8 dashboards were concerned on the model 2.x, 6 for the model 1.x)
- Re-position the popup menu each time the button is clicked, in case the button was moved...
- Make sure that tabs (and tab panels) are properly identified
- Removed the use of the obsolete $.browser property, since we don't care about IE 7 anyway.
- Upgrade to jQuery 1.10 and jQuery UI 1.10
- OQL normalization and dashlets have been made independent from the class MetaModel (adjusted the API)
- Added OQL normalization unit tests (to be run on a standard installation)
- #736 Could not delete objects unless you are authorized to bulk delete
- #734 Fixed a regression on reconciliation keys during CSV import.
- Internal: API to build the SQL statements to (re)-create an object
- Internal: new setting to tweak the data model by allowing null for all external keys (use with care!)
- Module refactoring: Configuration management must not require the installation of a Service Management module
- NEW: About box, to list the installed modules and ease troubleshooting
- #849 fix for the special case of loading class tags into a hierarchy
- #816, #825 and #830: removed annoying Notices (array to string conversion) appearing with PHP >= 5.4
- #764 Saving settings as "Default for all lists" now works as expected
- #770 Preserve list configuration (if dedicated) when creating a shortcut
- #775 preserve the open/closed status of the search form during auto-reload... by not reloading the form at all!
- #841 properly select the current tab
- #839 Managing n:1 links asked to leave the page (under Chrome!)
- #838 the OQL query for getting the SLTs is now a constant defined in the XML
- #842 Internal: recode the notifications page to allow several types of actions
- #823: proper figures for the CSV import "confirmation" pie chart.
- #830 Regression introduced in the beta. Related to the management of query arguments
- #829 Corrupted pwd when attempting to create an account without any profile
- Extensibility: make sure that checks implemented in an overload of CheckToWrite will be seen when parent::CheckToWrite is invoked at the end of the overload
- Optimizations: when displaying a "short" list, made of objects having the same status, three additional queries were made (now just one Group By query is made)
- Got rid of an unnecessary query (responsible for 8% of the time spent in a standard iTop page!!!)
- #827 Default language given at setup not taken into account (login page always in english)
- Improved the KPI logging: setting log_kpi_duration to 2 will enable blaming of the FIRST caller (callstack entirely shown in the produced report)
- Improved version of DoPostRequest which optionally uses cURL to workaround PHP/OpenSSL bugs !
- Internal: Helper for HTTP POSTs: can return the headers if requested
- Fix for the validation of the forms in the portal. The (lack of) localization was breaking it!
- Portal with Incident tickets: added rights on Incident for Portal users
- Portal: service type mapping can be an empty string
- Portal: no need to propose the public log in the request creation form (the description is enough, and the public log can be updated later on when viewing the ticket)
- Show the new setting portal_tickets in the default config file
- #853: When a list is configured directly from the table (NOT from the Dialog box), then these settings are not kept neither when creating a shortcut nor when opening the "configure this list" dialog
- #756: allow incidents and user request to be linked to 'closed' problems.
- Portal security enhancements:
- - ensure that a user can ony see the details of the ticket she/he is allowed to see, even if the id is typed manually
- - add a define'd filter to filter the drop-down lists of the search form for searching closed tickets.
- #851 Ampersand (aka '&') not welcomed in the setup wizard
- PHP Mail transport to allow 100% of recipients in BCC (regression introduced in 2.0.1)
- Regression of 2.0.2 beta: Configure this list + discard all columns: the list cannot be loaded anymore (if saved)
- Setup: fixed issue when upgrading a DB (no install dir specified, thus no config file) and requesting a backup: the backup is created without the config file in it.
- 3.2. Known limitations (https://sourceforge.net/apps/trac/itop/report/3)
- -----------------
- #71 The same MySQL credentials are used during the setup and for running the application.
- Suhosin can interfere with iTop. More information can be found here: http://www.combodo.com/wiki/doku.php?id=admin:suhosin
- Internet Explorer 6 is not supported (neither IE7 nor IE8 in compatibility mode)
- Tested with IE8 and IE9, Firefox 3.6 up to Firefox 24 and Chrome. Be aware that there are certain limitations when using IE8 in "security mode" (when running IE on a Windows 2008 Server for example)
- 3.3. Known issues (https://sourceforge.net/apps/trac/itop/report/3)
- ------------
- #259 Not instantaneously logged off when the administrator deletes a user account
- #273 The administrator can delete his/her own user account
- #372 APC Cache not efficient (multi org usage, global search)
- #382 Search form / base class lost after a search
- #377 Case log: exclude the index from the views
- #388 IE9: edition fields not resizable
- #443 Objects remain in the database after de-installing some modules
- #442 Useless profiles installed (1.x legacy data model only)
- #438 The selection of Organizations using the hierarchy does not work on IE8 in security mode
- #436 Cannot type "All Organizations"
- #381 Deletion of dependencies could fail in a multi-org environment
- #241 "status" is a free-text field when configuring a Trigger
- #358 Multi-column queries sometimes returning an empty set
- #399 Copy/paste from iTop's CaseLog looses tabs
- #343 CKEditor (HTML Editor) not compatible with direct object creation on ExtKeys
- #350 Object edition form: validation does not tell which field has a problem
- #730 Leaving temporary files when performing a backup of the data during installation
|