Go to file
2023-08-08 13:59:56 +01:00
.github add sonarcode 2023-08-04 20:47:18 +01:00
.husky
.vscode shortner > shortener 2023-07-29 16:03:00 -07:00
Accounts Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
AdminDashboard remove env tpl 2023-07-17 20:06:01 +01:00
ApiReference Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Backups fix backups and restore. 2022-12-12 15:25:30 +05:30
Certs add domain. 2023-03-02 15:46:28 +00:00
Ci script 2023-07-30 13:44:33 -07:00
Clickhouse Clickhouse 2023-07-30 13:45:44 -07:00
Common add logs to probe 2023-08-07 08:57:36 +01:00
CommonServer fix fmt 2023-08-08 13:57:51 +01:00
CommonUI fix css class 2023-08-02 18:05:07 +01:00
Dashboard Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
DashboardAPI Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Data add data folder 2023-07-11 20:22:17 +01:00
DatabaseMigrations
Devops don't 2023-07-30 08:08:53 -07:00
Docs consistency 2023-07-30 10:18:38 -07:00
Environment add env folder 2023-07-11 20:26:35 +01:00
File Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Haraka remove env tpl 2023-07-17 20:06:01 +01:00
HelmChart Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Home Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Identity Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Integration Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Licensing Update dependency jsonwebtoken to v9.0.1 2023-08-04 19:56:43 +00:00
LinkShortener Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Model make metered plan work 2023-08-04 12:38:11 +01:00
Nginx Update nginx Docker tag to v1.25.1 2023-08-04 19:52:07 +00:00
Notification Merge pull request #594 from OneUptime/renovate/handlebars-4.x-lockfile 2023-08-04 20:55:37 +01:00
Playwright Bump semver from 6.3.0 to 6.3.1 in /Playwright 2023-07-11 21:16:58 +00:00
Postgres remove env tpl 2023-07-17 20:06:01 +01:00
Probe fix add seconds 2023-08-07 16:34:05 +01:00
ProbeAPI add more props to count api 2023-08-07 13:11:09 +01:00
Realtime Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Redis remove env tpl 2023-07-17 20:06:01 +01:00
Scripts add coment 2023-08-08 13:59:56 +01:00
StatusPage Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
TestServer Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
Workers Merge branch 'master' of github.com-simon:OneUptime/oneuptime 2023-08-04 21:18:35 +01:00
Workflow Merge pull request #594 from OneUptime/renovate/handlebars-4.x-lockfile 2023-08-04 20:55:37 +01:00
.dockerignore fix docker file 2022-12-16 13:35:59 +05:30
.eslintignore fix folder name 2023-04-05 11:17:41 +01:00
.eslintrc.json fix lint. 2022-09-12 21:12:08 +01:00
.gitignore add env to gitignore 2023-07-22 18:51:21 +01:00
.prettierignore fix folder name 2023-04-05 11:17:41 +01:00
.prettierrc.json
babel.config.ts
backup.sh atleast 2023-07-30 17:48:48 -07:00
CHANGELOG
clean-npm-install.sh fix lock files 2022-12-16 14:22:23 +05:30
config.example.env change default value to 5 2023-08-07 15:28:07 +01:00
configure.sh fix DISTRIB 2023-08-07 21:00:25 +02:00
CONTRIBUTING.md
docker-compose.base.yml remove nginx image from base 2023-08-07 15:34:14 +01:00
docker-compose.dev.yml add logs to test server 2023-08-02 18:26:56 +01:00
docker-compose.yml add minio 2023-08-01 16:41:21 +01:00
install-node-modules.sh npm i 2023-02-08 20:40:06 +00:00
install.sh refactor status check script 2023-07-19 14:21:39 +01:00
LICENSE
migration-create.sh add migrations 2022-12-15 12:36:31 +05:30
migration-run.sh add migrations 2022-12-15 12:36:31 +05:30
package-lock.json Update dependency nodemon to v2.0.22 2023-08-04 19:51:34 +00:00
package.json add prerun in update 2023-07-31 15:40:13 +01:00
README.md notice that OneUptime is opensource 2023-08-07 21:35:04 +02:00
remove-node-modules.sh add script to remove node_modules 2023-02-09 11:55:58 +00:00
restore.sh atleast 2023-07-30 17:48:48 -07:00
SECURITY.md
sonar-project.properties add sonarcode 2023-08-04 20:47:18 +01:00
status-check.sh shortner > shortener 2023-07-29 16:03:00 -07:00
tsconfig.json fix docker files 2022-12-16 18:02:39 +05:30
uninstall.sh fix docker-compose 2022-12-07 07:49:18 +00:00
update-node-modules.sh
update.sh add update script 2023-06-11 15:26:52 +01:00

oneuptimelogo

PRs Welcome Join Slack Community Docker Pulls GitHub commit activity

OneUptime: The Complete Open-Source Observability Platform

OneUptime is a comprehensive solution for monitoring and managing your online services. Whether you need to check the availability of your website, dashboard, API, or any other online resource, OneUptime can alert your team when downtime happens and keep your customers informed with a status page. OneUptime also helps you handle incidents, set up on-call rotations, run tests, secure your services, analyze logs, track performance, and debug errors.

OneUptime replaces multiple tools with one integrated platform:

  • Uptime Monitoring: Monitor the availability and response time of your online services from multiple locations around the world. Get notified via email, SMS, Slack, or other channels when something goes wrong. Replace tools like Pingdom.
  • Status Page: Communicate with your customers and stakeholders during downtime or maintenance. Create a custom-branded status page that shows the current status and history of your services. Replace tools like StatusPage.io.
  • Incident Management: Manage incidents from start to finish with a collaborative workflow. Create incident reports, assign tasks, update stakeholders, and document resolutions. Replace tools like Incident.io.
  • On-call Rotation and Alerts: Schedule on-call shifts for your team and define escalation policies. Ensure that the right person is notified at the right time when an incident occurs. Replace tools like PagerDuty.
  • Tests (Coming soon): Automate testing of your online services with scripts or scenarios. Verify the functionality and performance of your APIs, web pages, or workflows. Replace tools like Postman.
  • Security (Coming soon): Protect your online services from cyberattacks and vulnerabilities. Scan your code and dependencies for security issues and get recommendations for fixing them. Replace tools like Snyk.
  • Logs Management (Coming soon): Collect, store, and analyze logs from your online services. Search, filter, and visualize log data to gain insights and troubleshoot issues. Replace tools like Loggly.
  • Performance Monitoring (Coming soon): Measure and optimize the performance of your online services. Track key metrics such as response time, throughput, error rate, and user satisfaction. Replace tools like NewRelic.
  • Error Tracking (Coming soon): Detect and diagnose errors in your online services. Get detailed error reports with stack traces, context, and user feedback. Replace tools like Sentry.

All under one platform.

Get Started for Free with OneUptime Cloud

OneUptime Cloud is the easiest and fastest way to monitor your website uptime and performance. You can sign up for free to OneUptime Cloud and enjoy the full benefits of OneUptime without any installation or maintenance hassle.

By using OneUptime Cloud, you also support the development of OneUptime open source project, which is a powerful and flexible tool for website monitoring. You can find more information about OneUptime open source project on GitHub. The code of OneUptime is completely open source, which means you can access, modify, and distribute it freely. You can also contribute to the project by reporting issues, suggesting features, or submitting pull requests.

If you need advanced features, such as API Access, Advances Workflows, or Advanced Access Control, you can upgrade to a paid plan anytime. You can compare the different plans and pricing on OneUptime Pricing page.

Deploy OneUptime completely free with Docker Compose

If you prefer to host OneUptime on your own server, you can use Docker Compose to deploy a single-server instance of OneUptime on Debian, Ubuntu, or RHEL. This option gives you more control and customization over your instance, but it also requires more technical skills and resources to deploy and maintain it.

Choose Your System Requirements

Depending on your usage and budget, you can choose from different system requirements for your server. For optimal performance, we suggest using OneUptime with:

  • Recommended System Requirements
    • 16GB RAM
    • 8 Core
    • 400GB SSD
    • Ubuntu 22.04
    • Docker and Docker Compose installed
  • Homelab Requirements
    • If you want to run OneUptime for personal or experimental use in a home environment, you can use the homelab requirements:
      • 12GB RAM
      • 4 Core
      • 100GB SSD
      • Docker and Docker Compose installed
  • Minimal Requirements
    • If you don't have the recommended system requirements, you can still use the minimal requirements:
      • 8GB RAM
      • 2 Core
      • 100GB SSD
      • Docker and Docker Compose installed
    • However, please note that using the minimal requirements may affect the performance and stability of your instance. You may experience slower loading times, higher CPU usage, or unexpected errors.

Prerequisites for Single-Server Deployment

Before you start the deployment process, please make sure you have:

  • A server running Debian, Ubuntu, or RHEL derivative
  • Docker and Docker Compose installed on your server

To install OneUptime:

# Clone this repo and cd into it.
git clone https://github.com/OneUptime/oneuptime.git
cd oneuptime

# Please make sure you're on release branch.
git checkout release

# Copy config.example.env to config.env
cp config.example.env config.env

# IMPORTANT: Edit config.env file. Please make sure you have random secrets.

npm start

If you don't like to use npm or do not have it installed, run this instead:

# Read env vars from config.env file and run docker-compose up.
export $(grep -v '^#' config.env | xargs) && docker compose up --remove-orphans -d

To update:

git checkout release # Please make sure you're on release branch.
git pull
npm run update

OneUptime should run at: http://localhost. You need to register a new account for your instance to start using it. If you would like to use https, please use a reverse proxy like Nginx.

Development

For local development you need to use docker-compose.dev.yml file.

You need to make sure you have:

  • Docker and Docker compose installed.
  • Node.js and NPM installed.
# Clone this repo and cd into it.
git clone https://github.com/OneUptime/oneuptime.git
cd oneuptime

# Copy config.example.env to config.env
cp config.example.env config.env

# Since this is dev, you don't have to edit any of those values in config.env. You can, but that's optional.
npm run dev

Philosophy

Our mission is to reduce downtime and increase the number of successful products in the world. To do that, we built a platform that helps you understand causes of the downtime, incidents and help reduce toil. Our product is open-source, free and available for everyone to use.

Contributing

We <3 contributions big and small. In priority order (although everything is appreciated) with the most helpful first:

Donate

If you like the project, please consider a small donation. Every single dollar will be used to ship new features or maintain existing ones. 100% of the work we do is open-source. Please donate here