Академический Документы
Профессиональный Документы
Культура Документы
Here is a list of commonly asked questions regarding the configuration of OpenGTS. This list is
continually growing, so check back periodically for updated questions and answers:
(Additional information can be found on the Documentation page, and in the runtime config file
'private.xml' file that comes with OpenGTS).
Glossary:
1. General terms, abbreviations, and definitions.
A) Overview:
1. What type of applications are using OpenGTS?
2. What is the basic overall architecture of OpenGTS?
3. How do I get started learning about the OpenGTS configuration options?
B) Installation:
1. What OS platforms are supported by OpenGTS?
2. How do I install OpenGTS?
3. Can I install OpenGTS on a virtual or shared server?
4. What are the system hardware requirements to run OpenGTS?
5. How do I upgrade OpenGTS to the latest version?
6. How do I enable available optional table columns?
7. How do I view messages sent by the CelltracGTS™/Pro application?
8. How do I check my OpenGTS installation to see if it was installed properly?
9. How do I load the sample data into OpenGTS?
10. How do I install multiple versions of the 'track.war' file?
C) Configuration:
1. How do I change the displayed language translation (ie. locale)?
2. How do I change the look-and-feel of the web-interface?
3. How do I change the default displayed map location and zoom when no pushpins
are displayed?
4. How do I change the speed settings for the pushpin colors displayed on the
Device map?
5. How do I change the displayed data/time formats?
6. How do I change the map provider?
7. How do I change the maximum number of pushpins displayed on the map?
8. How do I enable reverse-geocoding (ie. turning a latitude/longitude into an
address)?
9. I've enabled reverse-geocoding, but why are my address still blank?
10. My report addresses are fine, but why are the addresses in my email notifications
blank?
11. How do I change the map and report Calandars to show Monday as the first day
of the week?
12. How do I configure outbound SMTP (EMail) service?
13. How do I send outbound SMS messages from OpenGTS?
14. How do I set the first page viewed after logging in (other than the main menu)?
15. How do I download and serve my own local copy of "OpenLayers.js"?
16. How do I install the MapQuest AppKey to use for "Nominatim" reverse-
geocoding?
17. How do I enable the RuleFactoryExampe feature to send event email
notifications?
D) Tomcat:
1. How do I change the Tomcat listen port?
2. How do I remove the ":8080" port and "/track/Track" requirements from the Login
URL?
3. How do I change the default session timeout value for Tomcat?
4. How do I configure SSL (ie. "https") in Tomcat?
5. I've copied my changed "track.war" file to Tomcat, but I don't see my changes?
E) MySQL:
1. How do I increase the number of allowed MySQL connections?
2. How do I reset the MySQL 'root' password?
3. How do I repair a MySQL reported error indicating an "Incorrect key file"?
4. How do I copy the MySQL "gts" database to another computer?
G) Troubleshooting:
1. When attempting to build the project, why do I get a "Permission Denied" error?
2. How do I fix the compile error "... package javax.mail does not exist"?
3. How do I fix the login error "Error reading Account"?
4. How do I fix the web-page error "'private.xml' contains syntax/parsing errors"?
5. How do I fix the web-page Status 404 error "The requested resource (/track/Track)
is not available"?
6. How do I fix the web-page Status 404 error "The requested resource (/track/track)
is not available"?
7. After logging-in, selecting any menu option logs me out again.
8. How do I fix the command-line error "Can't locate .../common.pl in @INC ..."?
9. How do I enter command-line options on Windows?
H) Miscellaneous:
1. How do I find out more about other commercially available tracking/telematic
features?
Bicycles
Personal vehicles
Motocycles
Tractor/Trailers
Taxis
School Buses
Fuel delivery vehicles
Service vehicles
Golf carts
Delivery vans
Police vehicles
Emergency response vehicles
ATVs
Containers (cargo, recycling, etc)
Fixed water storage tank levels
RFID tagged packages
Agriculture
Aircraft
Ships
etc.
top
(click to enlarge)
This diagram shows the basic relationships between the various main components of
OpenGTS. The various device communication servers run as seperate processes on top of
Java. The Track servlet (which provides the web-interface), as well as other servlets (including
any http-based device communication servers) run within a Servlet Container, such as the one
provided by Apache Tomcat. This architecture allows for running the various components on
different physical servers, for assisting with 'high-availability' configurations.
top
A.3) How do I get started learning about the OpenGTS configuration options? [_]
The OpenGTS code base is a highly configurable enterprise grade system. After downloading
and installing the OpenGTS system, most of the customizaton changes can be made in one of
the following runtime configuration files:
private.xml - Web interface configuration. Controls the displayed menus and
available pages, the active map provider, the active reverse-geocode provider, the
displayed pre-configured reports, and various display properties.
config.conf - GTS system wide configuration file. Controls system wide
information such as the MySQL configuration, SMTP (EMail) configuration,
Outbound SMS gateway, Optional database table column configuration, and
various overrides to the "private.xml" file.
reports.xml - Report definition/configuration file. Configures the available report
definitions that can be made available for user selection.
war/track/css/ CSS files - Cascading Style Sheets which can control the fonts
and colors of various display options within the web interface.
To learn about the code layout itself, you can view the JavaDocs here. The GTS JavaDocs is a
work in progress, and is continually being updated, so check back often.
top
top
If the answer to these questions is yes, then this hosting provider will likely be able to run
OpenGTS.
top
B.4) What are the system hardware requirements to run OpenGTS? [_]
The following is the general recommended system configuration for running OpenGTS in a
production environment:
2.8Ghz Quad-Core CPU
8Gb RAM (16Gb or more recommended when running several DCS modules)
For a system used for testing purposes, or for tracking a small number of devices, the following
minimum configuration may be used:
1.8Ghz CPU
2Gb RAM (1 DCS module only)
top
This command will add any missing tables, and add any new columns within
existing tables.
For more information on the available optional table columns, and how they can be enabled,
see Appendix C in the OpenGTS Configuration/Installation manual at the following link:
®
top
B.8) How do I check my OpenGTS installation to see if it was installed properly? [_]
The procedure for checking the OpenGTS installation is described in Section 3.2 of the
"OpenGTS_Config.pdf" documentation. The Linux command for checking the OpenGTS
installation is as follows:
% cd $GTS_HOME
% bin/checkInstall.sh
This command will check several different aspects of the OpenGTS installation and display a
summary report of its findings. Any errors or warnings should be corrected, or at least
understood, before running the system in a production environment.
top
C.1) How do I change the displayed language translation (ie. locale)? [_]
This can be changed in the 'private.xml' file. On the "Domain" tag, change the "locale" to
the desired 2-letter country code. For example, to change the language to German, set the
Domain "locale" attribute to 'locale="de"'. You can also add a pull-down language selection
menu to the login page by setting the Property "accountLogin.showLocaleSelection" to
"true". The language selections are specified in the "SupportedLocales" tag.
(Rebuild/redeploy the 'track.war' file after making any changes to the 'private.xml' file.)
top
Setting the map to grow to the size of the client browser window frame.
Where the map controls are placed (ie. right or left).
Which map control options are displayed within the map control area.
The default displayed map latitude/longitude/zoom when no pushpins are available.
Setting various configurable options on the available displayed web pages.
Which web-pages are displayed/disabled to the user.
etc.
C.3) How do I change the default displayed map location and zoom when no pushpins
are displayed? [_]
This can be changed in the 'private.xml' file. Currently, the default latitude/longitude and
zoom centers over the US. To change this to another location, look for the " default.zoom",
"default.lat", and "default.lon" properties in the active "MapProvider", and change
them to the desired value:
...
<Property key="default.zoom">4</Property>
<Property key="default.lat">39.0000</Property>
<Property key="default.lon">-96.5000</Property>
...
Change the latitude/longitude and zoom level do your desire location.
(Rebuild/redeploy the 'track.war' file after making any changes to the 'private.xml' file.)
top
C.4) How do I change the speed settings for the pushpin colors displayed on the Device
map? [_]
The actual pushpin icon selection is determined in the JavaScript function
"evHeadingMarkerURL" found in the JavaScript module located at
"war/track/js/maps/jsmap.js". You can change the chosen pushpin, based on the current
speed, by modifying this function. To set the matching "Legend" displayed on the Device map,
you will need to modify the "Legend" tag section of the currently active MapProvider.
top
C.5) How do I change the displayed data/time formats? [_]
This can be changed in the 'private.xml' file. Look for the "DateFormat" and "TimeFormat"
tag sections.
(Rebuild/redeploy the 'track.war' file after making any changes to the 'private.xml' file.)
top
C.7) How do I change the maximum number of pushpins displayed on the map? [_]
In most cases there is no actual limit on the number of pushpins that may be displayed on a
map, however there may be a "practical" limit on the number of pushpins that a user may be
able to comprehend or assimilate. The 'default' maximum number of pushpins that can be
displayed on a map is set to 1000, however this limit can be set lower, or higher, in the
'private.xml' file within the active "MapProvider" section. The following properties may be
set to control the maximum pushins displayed on the "Device" map, "Fleet" map, or the map
available on certain reports:
<Property key="map.maxPushpins.device">500</Property>
<Property key="map.maxPushpins.fleet">500</Property>
<Property key="map.maxPushpins.report">500</Property>
The above example properties will set the maximum number of displayed pushpins to 500 for
the Device, Fleet, and report maps.
(Rebuild/redeploy the 'track.war' file after making any changes to the 'private.xml' file.)
top
Reverse-Geocoding only occurs on events which arrive after this configuration has been
completed (Reverse geocoding will not be retroactively applied to events which have already
been placed into the EventData table). Monitor the device communication server log files for
reverse-geocoding attempts, to verify that it is working properly.
The following command will test the configured active reverse-geocode provider:
% cd $GTS_HOME
% bin/rgTest.sh -pl=default -gp=39.12345/-142.12345
Where "-pl=" specifies the "default" private-label configuration, and "-gp=" specifies the
latitude/longitude (GeoPoint) that you wish to test with the active reverse-geocoding provider.
(Rebuild/redeploy the 'track.war' file after making any changes to the 'private.xml' file.)
top
C.9) I've enabled reverse-geocoding, but why are my address still blank? [_]
This can occur for one of several possible reasons:
The enabled reverse-geocoder does not support addresses in the area where the
vehicle is traveling (a different reverse-geocode provider will likely need to be
chosen).
The enabled reverse-geocoder may support the general geographic area, but does
not have an address for the specific latitude/longitude.
The enabled reverse-geocoder is currently off-line, or has refused to reverse-
geocode a location.
A reverse-geocoder was enabled after the events have been placed into the
database (the reverse-geocode provider only reverse-geocodes events arriving
after it has been enabled).
A combination of the reverse-geocode "rgTest.sh" command (see above) and the log files
from the running device communication server (DCS) should diagnose the reverse-geocoding
issue.
top
C.10) My report addresses are fine, but why are the addresses in my email notifications
blank? [_]
- Reverse geocode providers that publish their service over the web are considered "slow"
reverse-geocoding operations because they are dependent on Internet network latencies and
often cannot return their address information quickly enough (Internet-based reverse-geocode
providers typically take a few seconds to return their result).
- If the reverse-geocode provider is considered a slow Internet-based service, then when an
event arrives in a device communication server (DCS) it spawns a thread which is allowed to
take its time to query the reverse-geocode an address, allowing the main thread to continue
quickly. The main thread then continues and if any notifications need to be sent, they will not
yet have an address value ("${address}", "${fullAddress}", etc, will be blank) because the
reverse-geocoder has not yet obtained an address.
- If having an available address value is required at the time a notification is sent, there are two
possible solutions:
1. Within the "active" ReverseGeocodeProvider section set the " alwaysFast"
property to "true" (add the property "<Property
key="alwaysFast">true</Property>" if it does not already exist). This will
force the main thread to assume that the operation can occur quickly and continue
to wait for the reverse-geocode process to complete before continuing with any
notifications, thus providing non-blank values for " ${address}" and "$
{fullAddress}". (However, if the DCS is receiving a large number of events
every second, this can end up holding on to system resources (threads, memory,
etc) for an extended period of time and may limit the number of devices that the
server can ultimately handle)
2. Or install a locally hosted reverse-geocode provider on your own servers so that the
reverse-geocoding service does not need to reach out over Internet. Examples
include GISGraphy, and a few of the Geonames premium reverse-geocoding
services. (This is the recommended method of reverse-geocoding prior to event
notification)
top
C.11) How do I change the map and report Calandars to show Monday as the first day of
the week? [_]
This can be changed in the 'private.xml' file. Look for the following Property definition:
<Property key="calendar.firstDayOfWeek">0</Property>
Then set the value to '1' (ie. 0=Sunday, 1=Monday, ...).
(Rebuild/redeploy the 'track.war' file after making any changes to the 'private.xml' file.)
top
C.14) How do I set the first page viewed after logging in (other than the main menu)? [_]
After logging in, the default first page viewed is the main menu. To set this to a different page
(such as the vehicle or fleet maps), create a user (such as the default user "admin"), then edit
the user to set the "First Login Page" pull-down menu to the desired default page to first display
after the user logs in.
top
C.15) How do I download and serve my own local copy of "OpenLayers.js"? [_]
The "OpenLayers.js" JavaScript is used to display map tiles in the client browser when using
the OpenLayers/OpenStreetMaps MapProvider. In some cases it may be more advantageous
to download your own copy of the "OpenLayers.js" JavaScript and serve it yourself from your
own server. The following steps describe how to configure the GTS to use your own copy of the
"OpenLayers.js" JavaScript, rather than use the version pulled directly from the
OpenLayers.org server:
Download (and unzip if necessary) a copy of the latest " OpenLayers.js" from
"http://www.openlayers.org/download/" and place it at the following location
inside the GTS installation folder:
war/track/js/openlayers/OpenLayers.js
(create the "war/track/js/openlayers" directory if it does not already exist)
Modify the "private.xml" file and change the "openlayers.js" property
configuration in the "openLayers" MapProvider section. Change this line:
<Property
key="openlayers.js">http://openlayers.org/api/OpenLayers.js</Pro
perty>
To this (or add this proeprty line if it does not already exist):
<Property
key="openlayers.js">./js/openlayers/OpenLayers.js</Property>
Note: If you do serve your own local copy of the "OpenLayers.js" JavaScript, you may wish to
periodically check for updates from OpenLayers.org and download/install the latest version.
(Rebuild/Redeploy the "track.war" file, and restart any running DCS modules, after making
any changes to the runtime configuration files.)
top
C.16) How do I install the MapQuest AppKey to use for "Nominatim" reverse-geocoding?
[_]
To use the "nominatim" ReverseGeocodProvider, MapQuest requires that an AppKey now be
included in the reverse-geocoding request. A free app-key can be obtained from Mapquest at
"https://developer.mapquest.com/". The "nominatim" reverse-geocoding can be configured to
include your registered app-key by editing the "private/private_common.xml" file and
changing the following line ...
<Property
key="reverseURL">http://open.mapquestapi.com/nominatim/v1/reverse?
</Property>
To this ...
<Property key="reverseURL"><!
[CDATA[http://open.mapquestapi.com/nominatim/v1/reverse?
key=YOUR_APP_KEY&]]></Property>
Where "YOUR_APP_KEY" is replaced with the registered app-key obtained from MapQuest.
[don't forget to include the ampersand (&) at the end of your app-key]
After adding the above app-key to the "nominatim" configuration, stop and restart all of the
running DCS files.
top
C.17) How do I enable the RuleFactoryExampe feature to send event email notifications?
[_]
This "RuleFactoryExmaple" is intended to be an example starting point for creating your own
customized rule 'selector' parser and notification system. To complete the installation of the
RuleFactoryExample feature, complete the following steps:
1. Outbound SMTP EMail configuration:
Make sure that the outbound EMail (SMTP) service is set up and working properly.
This is configured in the 'config.conf' file in the OpenGTS installation directory.
This link will provide more information on setting up the SMTP/EMail configuration.
2. Modify this RuleFactoryExample.java module:
In the source module below, modify the parsing of the Rule "selectors' to fit your
own requirements.
src/org/opengts/db/RuleFactoryExample.java
This module contains some examples for creating a very simple type of rule
selector.
3. Load RuleFactoryExample at Startup:
Set the configuration to load this RuleFactoryExample module at startup. Typically
uncommenting/setting the following property in "config.conf" will set the
RuleFactory instance:
RuleFactory.class=org.opengts.db.RuleFactoryExample
top
D.2) How do I remove the ":8080" port and "/track/Track" requirements from the Login
URL? [_]
The typical login URL is "http://track.example.com:8080/track/Track" (where
"track.example.com" is the domain name of your server). This URL is usually placed in a link
from another company webpage so the user never needs to specifically enter this URL.
However, in some cases it may be necessary, or desireable, to instead only require that a user
go directory to a url such as "http://login.example.com" to login, instead of requiring that
the ":8080" and "/track/Track" also be included. The easiest way to accomplish this is to
create an "index.html" file which loads the login url into a single frame. This way the user can
enter a url such as "http://login.example.com", and have the "index.html" file load the
actual login url into a frame.
The latest version of OpenGTS provides a feature will create this 'frame' html for you.
Assuming that "http://track.example.com:8080/track/Track" is the URL used to view
the login page, the following URL will automatically produce the html 'frame' page required that
can be used on another static web server to eliminate the need to enter the " :8080" or the
"/track/Track" specification (change the domain name and port to fit your specific
requirement):
http://track.example.com:8080/track/loginFrame.html
Right-click and save this HTML page (ie. "Save Page As") and copy the resulting file to a
directory on your static web-server. For instance, if you have a static web-server at the location
"http://login.example.com", and you copy the above html to a file called "index.html" in
the root directory of your web-server (typically "htdocs"), then you should be able to see the
login page at "http://login.example.com".
top
D.3) How do I change the default session timeout value for Tomcat? [_]
This can be changed in the Tomcat default "web.xml" file found in the Tomcat directory
"$CATALINA_HOME/conf/web.xml". Here is the section of the "web.xml" file that sets the
timeout to 30 minutes:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
You can change this value to any desired length of time. Tomcat should be restarted after this
value has been changed. (Note: setting this value too large may cause excessive resources to
be consumes by users which have logged in, but are not actually using the system).
top
D.5) I've copied my changed "track.war" file to Tomcat, but I don't see my changes? [_]
Servlet .war files, such as "track.war" are typically deployed to the Tomcat webapps/
directory. If Tomcat is configured with autoDeploy="true" (the default configuration in
"conf/server.xml"), then any .war file copied to the Tomcat webapps/ directory should be
automatically deployed. However, if for some reason your installation of Tomcat is not
automatically deploying the new track.war file, you can usually force a deployment using the
following steps:
1. Stop the currently running Tomcat (ie. "$CATALINA_HOME/bin/shutdown.sh").
2. Remove the old deployed Tomcat webapps/track/ directory.
3. Copy the new track.war file to the Tomcat webapps/ directory.
4. Restart Tomcat (ie. "$CATALINA_HOME/bin/startup.sh").
5. Monitor the Tomcat "logs/catalina.out" log file for deployment of the new
track.war file.
top
E.3) How do I repair a MySQL reported error indicating an "Incorrect key file"? [_]
During a normal system shurdown or reboot, the MySQL service is stopped gracefully, however
if the MySQL database was not shutdown normally (as can occur during a power-fail, etc) a
MySQL table key index can be come corrupted, resulting in an error similar to the following:
java.sql.SQLException: Incorrect key file for table
'./gts/EventData.MYI'; try to repair it
Or, possibly an error similar to the following:
java.sql.SQLException: Table './gts/EventData' is marked as crashed
and should be repaired
The following MySQL website describes how to repair key file issues:
http://dev.mysql.com/doc/refman/5.0/en/myisam-repair.html
top
E.4) How do I copy the MySQL "gts" database to another computer? [_]
The default name of the MySQL GTS database is "gts" (overridable in the "common.conf" file
with the property "db.sql.dbname"). This database can be copied from one computer to
another using the procedures outlined by MySQL at the following link:
http://dev.mysql.com/doc/refman/5.0/en/copying-databases.html
top
F.1) How do I use a Boost Mobile Motorola GPS phone with OpenGTS? [_]
For information regarding support for various Boost Mobile Motorola phones, please see the
document at "MotoDMTP/MotoDMTP.txt" in the OpenGTS installation directory.
top
F.3) How do I use the "Aspicore GSM Tracker" Nokia phone tracking software with
OpenGTS? [_]
The document "OpenGTS_Config.pdf", included in the downloaded zip file package, contains
information for installing/configuring the device communication server for Aspicore supported
phones.
top
F.4) Why am I getting a "Read timeout" when using the "sipgear" DCS with a TK102
device. [_]
Some TK102 devices do not provide a proper packet terminating character which would
indicate to the server that the packet is complete and can be processed. If this is the case, you
can try adding the following property to the "dcservers.xml" file, in the "sipgear" DCServer
section:
<Property key="packetLenEndOfStream">true</Property>
This configuration will cause the data end-of-stream to be considered the packet termination so
that the packet can then be parsed and processed.
top
Each of these features potentially has an additional cost associated with it as well. The more
features required, the more costly the solution, and the cost of the solution will need to be
weighed against the benefit of the information that it provides. Once the required features have
been determined, the search for the best device that fits the requirements can begin.
top
These are only guidelines, and a system tracking 1000's of devices, or tracking at a much more
frequent interval, will require more system resources than a system tracking fewer devices at a
less frequent reporting interval.
top
F.7) How is GPS tracking/telematic data sent from the device to the server? [_]
Depending on the capabilities of the device, data can be transmitted to the server in one of
several ways. The following describes some of the methods used by devices to transmit data to
the server:
Cellphone Network - The most common method of transmitting data to the server.
The GPS tracking device contains a Cellphone modem which typically uses a SIM
card provided by a Wireless Data Provider (ie. AT&T, T-Mobile, Sprint, Rogers, etc).
The modem uses this wireless data-plan to establish a connection to Internet, and
then a socket connection with the server. Once connected to the server, it typically
sends its location information, then disconnects. Data can be transmitted using
UDP or TCP. Each has their advantages and disadvantages, however UDP is
generally preferred due to its much greater data bandwidth efficiency. In some
cases, data may be sent to the server using SMS through the use of an SMS-
Gateway. The following graphic displays how GPS data may be transmitted to the
server over a GPRS/Mobile network:
(click to enlarge)
WiFi Network - The GPS tracking device contains an 802.11 compiant WiFi
modem when connects to a wireless router to send data to the server. This type of
application is typically limited to very localized environments, such as tracking
vehicles traveling within a closed yard, or mining plant. The advantage with this
solution is that there is no associated cost with the tracking of the vehicle, however,
the coverage area is limited to a very specific geographical area.
Bluetooth - The GPS tracking device contains a Bluetooth modem, which it uses to
connect to a local bluetooth enabled server, or router, to send data to the server.
This type of application tends to be used only in very customized applications.
Memory Card - The GPS tracking device contains a removable memory card (such
as a "Secure Digital (SD)" card). At the end of the day's travels, the memory card is
removed from the device and inserted into a reader which downloads the data to
the server. The advantage with this solution is that there is no associated cost with
the tracking of the vehicle, however, obtaining near real-time tracking on a map is
not possible using this solution.
Once the data is received by the server, the modem-id (ie. IMEI number, etc), or other uniquely
identifying number, is used to associate the event with an account/device on the server. Once
the event has been associated with an account/device, the event is ready for viewing on a
report or map.
top
F.9) Why do the TCP sessions in my DCS module always time-out? [_]
The default behavior of most of the supported DCS modules is to force a TCP session closed
after a certain timeout to release/reuse system resources used by the TCP session. This allows
greater scalability for supporting a larger number of devices. However, some devices which use
TCP mode to send data to the server may require that they always maintain a constant
connection with the server (sometimes even if they have no data to transmit). In this case it
may be necessary to configure the DCS module to increase the timeout to a larger value. This
can be configured in the "dcservers.xml" file (or "dcservers/dcserver_XXXXX.xml" file,
where XXXXX is the DCS id) by increasing the TCP session timeout value (for example, '7200'
seconds - 2 hours) as follows:
<Property key="tcpIdleTimeoutMS">1800000</Property>
<Property key="tcpPacketTimeoutMS">1800000</Property>
<Property key="tcpSessionTimeoutMS">7200000</Property>
(Note that the timeout values are specified in milliseconds)
This will cause the DCS, for which the above properties were set, to leave the TCP session
open for at least 2 hours, before forcing the session to close. (Note: each connected TCP
connesion consumes system resources - memory, threads, filehandles, etc. Having many such
connected TCP sessions may significantly limit the number of devices which can connect with
your server).
top
F.10) Why does my event table contain events dated in the future, and how do I delete
them? [_]
Occasionally some GPS tracking devices will send an event to the server with a date/time
which is in the future, sometimes a long time into the future. This can be caused by marginal
GPS converage. This condition can be prevented by setting the following properties in the
"common.conf" file:
Device.futureDate.action=ignore
Device.futureDate.maximumSec=86400
The above specification will cause all events to be ignored which are more than 1 day (86400
seconds) into the future.
The following command can be used to obtain a count of all future events for a specific account
and device:
cd $GTS_HOME
bin/admin.sh Device -account=myaccount -device=mydevice
-countFutureEvents=3600
The above command will display a count of events which are more than 1 hour (3600 seconds)
into the future. [replace "myaccount" and "mydevice" with the desired account/device id.]
The following command can be used to delete these future events for a specific account and
device:
cd $GTS_HOME
bin/admin.sh Device -account=myaccount -device=mydevice
-deleteFutureEvents=3600
The above command will delete events which are more than 1 hour (3600 seconds) into the
future. [replace "myaccount" and "mydevice" with the desired account/device id.]
(make sure you back-up the EventData table before deleting any records)
top
F.11) How do I trim/delete old events from the EventData table? [_]
The following command example can be used to obtain a count of all old events for a specific
device within an account. This example will display a count of events which are more than 120
days old. [replace "myaccount" and "mydevice" with the desired account/device id.] (v2.3.9-
B30+)
cd $GTS_HOME
bin/admin.sh Device -account=myaccount -device=mydevice \
-countOldEvents=-120d
The following command can be used to delete old events for a specific device within an
account. This example will delete events which are more than 120 days old. [replace
"myaccount" and "mydevice" with the desired account/device id.] (v2.3.9-B30+)
cd $GTS_HOME
bin/admin.sh Device -account=myaccount -device=mydevice \
-deleteOldEvents=-120d -confirmDelete
Since this delete cannot be undone, the option "-confirmDelete" is required to ensure that
you intend to delete the events. (make sure you back-up the EventData table before deleting
any records)
top
F.12) Why does my GPS-based odometer calculation not match my vehicles actual
odometer? [_]
Using a GPS-based odometer calculation, which accumulates the distances between
successive GPS events, tends to underestimate the actual odometer while the vehicle is
moving, because it tends to "straighten out" the roads, since GPS event is typically only sent to
the server every few minutes. In some cases it can also overestimate the vehicle odometer
while the vehicle is stopped because stray GPS events can cause the accumulated distance to
increase even while the vehicle is stopped. If the device itself is capable of obtaining the actual
vehicle odometer, this would be the most accurate as it would exactly reflect the actual
odometer of the vehicle.
top
G.1) When attempting to build the project, why do I get a "Permission Denied" error? [_]
This error can occur on Linux when building the OpenGTS project as one user (such as
"opengts"), when another user (such as "root") happens to own some, or all, of the files in the
installation directory. All of the files within the GTS installation directory should be owned by the
same user which is building the project. To make sure that all of the files are owned by the
proper user, the following command may be executed as "root":
chown -R opengts:opengts /usr/local/OpenGTS_1.2.3
The "-R" indicates that a recursive ownership change should be performed. The
"opengts:opengts" indicates the user and group to which the directory ownership should be
changed (change this to your preferred user:group). And "/usr/local/OpenGTS_1.2.3"
should be the absolute path of where GTS was installed (change this to the actual directory
path where GTS was installed).
(see the Linux "man" page for "chown" for more information on this command - ie. command
"man chown")
top
G.2) How do I fix the compile error "... package javax.mail does not exist"? [_]
This compile error occurs when the JavaMail library has not yet been installed. Please refer to
the "OpenGTS_Config.pdf" document (section 2.2) for additional information.
top
G.3) How do I fix the login error "Error reading Account"? [_]
When attempting to log-in, if you see an error panel which displays "Error reading Account", this
is usually due to the OpenGTS database not having been properly initialized for MySQL (or if
MySQL is not currently running). Refer to the "OpenGTS_Config.pdf" document for how to
initialize the OpenGTS database for MySQL, then run the "bin/checkInstall.sh" command
to check the installation (see "How do I check my OpenGTS installation to see if it was installed
properly?" above). If the error persists, then also check the Tomcat log files (ie.
"$CATALINA_HOME/logs/catalina.out") to see if it presents any clues regarding why the
database error is occurring.
top
G.4) How do I fix the web-page Status 404 error "'private.xml' contains syntax/parsing
errors"? [_]
This occurs when the file 'private.xml' has been modified, and XML syntax errors have been
introduced into the file. Running the command "bin/checkInstall.sh" should help pinpoint
where in the file the XML syntax errors exist. Fix the XML syntax errors, then re-run the
"bin/checkInstall.sh" command to see if the XML syntax errors were corrected. Then
rebuild/redploy the 'track.war' file.
top
G.5) How do I fix the web-page Status 404 error "The requested resource (/track/Track) is
not available"? [_]
This occurs when Tomcat is running, but the 'track.war' file has not been properly deployed to
Tomcat's "webapps" directory (ie. "$CATALINA_HOME/webapps/."). Make sure that the
OpenGTS "build/track.war" file has been copied to the Tomcat "webapps" directory.
Tomcat should then automatically deploy the "track.war" file by unzipping the file and making
it available through the web-interface (if Tomcat does not automatically deploy the track.war
file, make sure that Tomcat's "autoDeploy" property is set to "true", in the Tomcat
"conf/server.xml" file). Also make sure that you are using the proper URL when attempting
to access the login page. Assuming that you have installed Tomcat on the server "localhost",
using port "8080", the correct URL should be "http://localhost:8080/track/Track".
top
G.6) How do I fix the web-page error "The requested resource (/track/track) is not
available"? [_]
URLs are case-sensitive. The correct URL should be specified as
"http://localhost:8080/track/Track", with the first letter of the second "Track"
capitalized. ("localhost" should be replaced with your appropriate domain name).
top
G.7) After logging-in, selecting any menu option logs me out again. [_]
If everytime you log-in and select a menu option, it always logs you out and displays the login
page again, then the most likely reason is that your client browser is not accepting cookies from
the server. The GTS server uses client-side cookies to maintain session state. If cookies are
disabled, the server is not able to determine that the user has logged-in. To correct this,
configure your client browser to accept cookies from the server providing the GTS service.
top
G.8) How do I fix the command-line error "Can't locate .../common.pl in @INC ..."? [_]
This command-line error can occur when executing a Perl command script, and the
"GTS_HOME" environment variable is not set, or is set to an invalid location. Set the " GTS_HOME"
environment variable to the proper location, and try the command again.
top
top
Copyright© 2007-2011 GeoTelematic Solutions, Inc., All rights reserved.