diff --git a/docs/8.0/ayanova/docs/ops-backup.md b/docs/8.0/ayanova/docs/ops-backup.md index cfbab009..a832df67 100644 --- a/docs/8.0/ayanova/docs/ops-backup.md +++ b/docs/8.0/ayanova/docs/ops-backup.md @@ -1,5 +1,12 @@ # OPS-BACKUP Placeholder +[Under Construction] + +Backup process, controls, ongoing maintenance, notification settings related to backup +10 backup rotation +Settings related to backup + + ROLES AND RIGHTS: Modify automated backup settings Trigger backup diff --git a/docs/8.0/ayanova/docs/ops-install.md b/docs/8.0/ayanova/docs/ops-install.md new file mode 100644 index 00000000..f5967d3f --- /dev/null +++ b/docs/8.0/ayanova/docs/ops-install.md @@ -0,0 +1,3 @@ +# OPS-LOG Placeholder + +[UNDER CONSTRUCTION PRE-RELEASE] diff --git a/docs/8.0/ayanova/docs/ops-intro.md b/docs/8.0/ayanova/docs/ops-intro.md index d10e684c..b460d155 100644 --- a/docs/8.0/ayanova/docs/ops-intro.md +++ b/docs/8.0/ayanova/docs/ops-intro.md @@ -1,4 +1,40 @@ -# OPERATIONS INTRO Placeholder +# AYANOVA SERVER OPERATIONS GUIDE + +## AyaNova system architecture + +AyaNova is a client / server application split between the AyaNova API web server and a progressive web application that provides the AyaNova user interface. + +## AyaNova server + +The AyaNova server is built upon the [ASP.NET Core](https://docs.microsoft.com/en-us/aspnet/core/introduction-to-aspnet-core?view=aspnetcore-6.0) framework which is a cross-platform, high-performance, open-source framework for web applications allowing the AyaNova server to run on multiple operating systems include Windows and Linux. + +## Database + +AyaNova uses the [Postgres](https://www.postgresql.org/) database server exclusively. "PostgreSQL is a powerful, open source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance." - from the Postgres web site. + +Postgres can be run on multiple operating systems including Linux or Windows. + +## AyaNova client + +The "front end" of AyaNova also known as the "client" is the user interface for AyaNova. The AyaNova client is a progressive web application. "Progressive" refers to the applications ability to adapt to the device being used and it's screen dimensions. Any device on any platform, desktop or mobile, can be used with AyaNova provided it has a modern web browser with Javascript enabled. + +## Installation +AyaNova supports many configurations from single user on a single computer, multiple office users on a local area network to large corporate scenarios where AyaNova is accessed globally from the internet. + +AyaNova can be installed on many platforms including a single computer for private use, an office network server or on a 3rd party internet hosting site (Windows or Linux). + +The [installation guide](ops-install.md) is the starting point for installing AyaNova to meet specific needs. + +## Configuration + +The [configuration guide](ops-config-environment-variables.md) is a reference to all the operational settings related to booting the AyaNova server and adjusting how it operates. + +## Maintenance +The [maintenance guide](ops-maintenance.md) is a reference to important maintenance tasks for the person responsible for keeping AyaNova server running and data safely maintained. + +## Metrics + + - docs link here to explain what the AyaNoav server is so start with a server section and explain client server aspects briefly in overview - Then go on to the basic sections of ops starting with installation then config and then ongoing maintenance and metrics etc \ No newline at end of file diff --git a/docs/8.0/ayanova/docs/ops-maintenance.md b/docs/8.0/ayanova/docs/ops-maintenance.md new file mode 100644 index 00000000..fb811f3a --- /dev/null +++ b/docs/8.0/ayanova/docs/ops-maintenance.md @@ -0,0 +1,30 @@ +# SERVER MAINTENANCE + +AyaNova server requires very little ongoing maintenance itself, however there are a few things that need to be monitored. + +## Authorization Roles required + +Operations specific tasks performed within the AyaNova user interface required the following [roles](ay-biz-admin-roles.md): + +- `System operations` full access +- `System operations - restricted` read only access + +The restricted role is ideal for giving access to a non technical staff member to monitor the server operations but not make changes that could break anything. + +## Backup +The single most important ongoing task is ensuring the backup process is working properly and monitoring it. A full backup consists of a backup of the Postgres AyaNova database **and** a backup of the attachment files that are stored in the file system. It is not sufficient to merely allow AyaNova to backup to it's own drive, it's critically important that backups be stored **off-site** physically far away from the AyaNova server to ensure business recovery is possible in the event of a theft, fire or other disaster. + +See the [backup guide](ops-backup.md) for details. + +## Metrics +The AyaNova client [server metrics](ops-metrics.md) form in the AyaNova user interface is an important resource to monitor the ongoing health of the AyaNova server and ensure that it has enough resources to perform adequately. Metrics should be reviewed on an ongoing and regular basis to view changes over time and ensure the server isn't running out of resources like memory or disk space (for example) that could slow down or even prevent the server from performing it's tasks. + +## Logs +The AyaNova client [server logs](ops-log.md) are available primarily for when things go wrong however it is good practice to examine them from time to time from an ongoing maintenance perspective to ensure nothing unusual is recurring such as logins from an unexpected location or a recurring warning message. + +## Notifications +AyaNova's notification system provides [several operations specific notifications](ops-notification-system.md#operations-specific-notification-events) of interest to people responsible for the AyaNova servers operations. + +## Jobs +The server has a server job system which runs various tasks throughout the day in the background and also runs some tasks on demand from users. It's a good idea to monitor the [job queue](ops-jobs.md) from time to time to look for anything unusual. + diff --git a/docs/8.0/ayanova/docs/ops-metrics.md b/docs/8.0/ayanova/docs/ops-metrics.md index b1e317fd..e88fd24d 100644 --- a/docs/8.0/ayanova/docs/ops-metrics.md +++ b/docs/8.0/ayanova/docs/ops-metrics.md @@ -1,4 +1,6 @@ -# METRICS (INCOMPLETE) +# METRICS + +[under construction] AyaNova 8+ automatically tracks server metrics for ongoing server maintenance, monitoring and troubleshooting. diff --git a/docs/8.0/ayanova/docs/ops-notification-system.md b/docs/8.0/ayanova/docs/ops-notification-system.md index a3d02ed8..808589d3 100644 --- a/docs/8.0/ayanova/docs/ops-notification-system.md +++ b/docs/8.0/ayanova/docs/ops-notification-system.md @@ -2,28 +2,30 @@ AyaNova has a built in notification system that alerts users to events of interest that occur in AyaNova. - ## Types of notifications + AyaNova has a default in application "General" type notification (used for internal system alerts and direct notification messages between users) to which all users are automtically subscribed by default. (Users can also optionally add email delivery for General notifications) -Beyond General notifications, Users can [optionally subscribe](home-notify-subscriptions.md) to dozens of other types of built in notifications for specific events such as a particular type of object being created or a Work order status changing. +Beyond General notifications, Users can [optionally subscribe](home-notify-subscriptions.md) to dozens of other types of built in notifications for specific events such as a particular type of object being created or a Work order status changing. ## Notification delivery methods + There are two methods of delivering notifications: -* In the AyaNova application in the [Notifications](home-notifications.md) form -* Email via SMTP server which includes delivery to regular email programs as well as to devices via [SMS / MMS gateways](https://www.wikihow.com/Send-a-Text-from-Email) provided by Cellular providers. + +- In the AyaNova application in the [Notifications](home-notifications.md) form +- Email via SMTP server which includes delivery to regular email programs as well as to devices via [SMS / MMS gateways](https://www.wikihow.com/Send-a-Text-from-Email) provided by Cellular providers. ## Email delivery configuration + The in application delivery does not require any configuration however the SMTP delivery is required to be set up in the [Ops Notification settings](ops-notification-settings.md) form. ## Operations specific notification events + Operations users should subscribe to several key notifications related directly to system operations: -* NotifyHealthCheck - a recurring daily notification system "ping" sent out between 8am and 10am once every 24 hours minimum every day which is a verification that the notification system is up and running -* BackupStatus - results of last backup operation -* ServerOperationsProblem - sent whenever the server encounters any unusual condition or error that could be critical for the continuing operation of the AyaNova server + +- NotifyHealthCheck - a recurring daily notification system "ping" sent out between 8am and 10am once every 24 hours minimum every day which is a verification that the notification system is up and running +- BackupStatus - results of last backup operation +- ServerOperationsProblem - sent whenever the server encounters any unusual condition or error that could be critical for the continuing operation of the AyaNova server These are in addition to the normal operations methods of monitoring the health and status of the server such as [server logs](ops-log.md), [metrics](ops-metrics.md), [job queue](ops-jobs.md) etc. - - - diff --git a/docs/8.0/ayanova/mkdocs.yml b/docs/8.0/ayanova/mkdocs.yml index c1b7edcd..34272a7b 100644 --- a/docs/8.0/ayanova/mkdocs.yml +++ b/docs/8.0/ayanova/mkdocs.yml @@ -122,6 +122,9 @@ nav: - Trying out AyaNova: - 'Evaluate': 'ay-evaluate.md' - Server operations guide: + - Installation: + - 'Installation': 'ops-install.md' + - 'Maintenance': 'ops-maintenance.md' - Forms: - 'Introduction': 'ops-intro.md' - 'Server state': 'ops-server-state.md' @@ -133,7 +136,8 @@ nav: - 'Notification settings': 'ops-notification-settings.md' - 'Backup': 'ops-form-backup.md' - Technical: - - 'Installation': '_placeholder.md' + - 'Installation': 'ops-install.md' + - 'Maintenance': 'ops-maintenance.md' - 'Logging': 'common-log.md' - 'View server settings': 'ops-server-information.md' - 'Server locale settings': 'ops-server-locale.md' diff --git a/server/AyaNova/util/AyaNovaVersion.cs b/server/AyaNova/util/AyaNovaVersion.cs index 4073d6b5..838480d0 100644 --- a/server/AyaNova/util/AyaNovaVersion.cs +++ b/server/AyaNova/util/AyaNovaVersion.cs @@ -5,7 +5,7 @@ namespace AyaNova.Util /// internal static class AyaNovaVersion { - public const string VersionString = "8.0.0-alpha.141"; + public const string VersionString = "8.0.0-beta.1"; public const string FullNameAndVersion = "AyaNova server " + VersionString; }//eoc }//eons \ No newline at end of file