Install and upgrade
Installing MaxTrax is the same on your own server and on Azure App Service, for a new site and for an upgrade. Check the Server requirements first.
Before you start
Settle these first. Each is a decision or a name, not a document.
- Hosting: your own server or Azure, the web address (host name) for each site, its certificate, and who looks after IIS and SQL Server.
- Database: the SQL Server name, an empty database for the site, and its login. Keep the password with your own administrators. Never send it to CSDS.
- Email: the SMTP server, its port, the sender address, and whether it needs a user name and password.
- First administrator: who creates the first account when the site first starts.
Install a new site
- Prepare. Create the IIS site and application pool, or the App Service, and an empty database with its own login.
- Extract the release. Each release comes as a .zip file. Extract it into the IIS site folder, or deploy it to the App Service's site folder.
- Set the settings. Set the database connection string,
MAXTRAX_MAIN_DB, and your SMTP server as environment variables of the site's application pool, or as application settings on App Service. See Server settings for every setting and where to keep the secrets. - Start the site. On start, MaxTrax creates or updates its own tables and loads its starting data. No scripts are run by hand.
- Create the first administrator. Open the site. While it has no users, it shows Set up MaxTrax instead of the sign-in page. Fill in the user name, first and last name, email and password and choose Create and sign in. That account is a Corporate Administrator. Do this before users can reach the site, or limit the site to your own address until it is done.
- Check it started. Look in
App_Data\logsfor start-up errors. IfMAXTRAX_MAIN_DBis missing or wrong, the site refuses to start and the log says why.
Then set up the site's lists, projects and users: see First-time setup and Preparing a new project.
Upgrade a site
- Back up the database, and copy the site's
Web.configandApp_Datafolder. - Stop the application pool, or put up an offline page.
- Extract the new release over the site folder. Keep
App_Data. - The release's
Web.configreplaces the site's own. Compare the two and put back anything the site set there, such as itsmachineKey. Settings kept as environment variables or App Service application settings carry over by themselves. - Start the site. MaxTrax applies its own database changes on start.
- Check
App_Data\logsfor start-up errors and that email still goes out.
Backups
- Back up each site's database with SQL Server's own tools (or Azure SQL's backups). MaxTrax has no backup feature of its own.
- Keep each site's
Web.config(with itsmachineKey) andApp_Dataseparately and securely. - Test a restore and a sign-in at least once a year.
- Backups hold personal data, such as names and email addresses, so apply your own retention rules to them.
Logs
The site writes text files to App_Data\logs (or the folder in MAXTRAX_LOG_PATH), named General-, System-, Data-, Config-, Reporting- and Security- with a date. MaxTrax does not delete old log files, so schedule a daily clean-up that matches your retention period. The logs hold user names, email addresses and IP addresses, so only administrators should read them. They never hold passwords or full connection strings.
Changes to records, sign-ins and exports are kept in the database's audit log. See Checks and clean-up.
Background jobs
Scheduled reports, subscriptions, report renders and Excel imports run as background jobs inside the site, one at a time on each queue, and the queue is kept in the site's own database. That keeps large workbooks and heavy reports from holding up anyone's browser, and caps memory use. A Corporate Administrator can watch them from Administration, under Background jobs dashboard.
Background jobs only run while the site is running. That is why the application pool must be AlwaysRunning and App Service needs Always On.
The CSDS support account
MaxTrax has one built-in account, CSDS, for support sessions. It is off unless the server settings switch it on for a limited time (see Server settings). Leave it off unless you have agreed a support task with CSDS. Every sign-in with it is in the audit log as CSDS Support.