Getting Started
With Log Owl, production is no longer a black box. Log Owl's adapters and open interface allow you to get started rapidly. The documentation will guide you on your first steps with Log Owl. You are going to learn how to set up your organization and invite users. There are also guides, that help you install and configuring the Log Owl adapters.
About
Log Owl can be used as a fully managed service or hosted by yourself in your own infrastructure. The Log Owl app consists of four components. They are all open-source and available for free use. Please find the source code on GitHub.
Service: Log Owl's backend, written in Go. The service can be built from source or conveniently deployed as Docker image. The latest versions are available on Docker Hub. This allows you to host your own Log Owl service.
MongoDB: Log Owl uses MongoDB as a persistence layer. It can be a MongoDB instance managed by services such as mLab or Atlas or a self-hosted instance.
Client: the Log Owl client is a React app, that can be hosted by yourself and easily be connected to your own Log Owl service.
Adapters: adapters are installed on the services that you want to monitor. Log Owl also offers an open interface that allows users to develop their custom adapters that fit their individual needs.
Managed Service
Using the managed Log Owl service is the quickest way to get started. Head over to Log Owl.io and create a new organization. Log Owl's managed service is currently free to use with the following limits:
- 50.000 logging events per month
- 5 users per organization
The limit is being resetted on the first day of each month. The monthly volume is shown in the organizations settings. Please contact hey@Log Owl.io if you need to increase the limits.
Self-Hosted
Log Owl can also be self-hosted in your own infrastructure. You can either build the service from source or use the Docker image from Docker Hub.
Service
Log Owl Docker image
Running the Log Owl Docker image is the easiest way to run Log Owl in your own infrastructure. All you need is Docker and a MongoDB instance. You can install MongoDB locally, run it as a separate container or use a remote instance provided by services like mLab or Atlas.
The following environment variables need to be provided.
Environment Variable | Description |
---|---|
PORT | Determines the port that the server should listen on. |
SECRET | Secret key that is used to sign JWT's. Make sure to provide a strong key. |
MONGO_URI | The connection string of the MongoDB. Please refer to the MongoDB documentation for the format of the connection string. |
MONGO_DB_NAME | The name of the actual database. |
MAILGUN_PRIVATE_KEY | Private key for Mailgun. The private key can be found in the Mailgun settings. This environment variable is optional. |
MAILGUN_DOMAIN | The domain that is connected to your Mailgun account. This environment variable is optional. |
MAILGUN_API_BASE | The API base of your Mailgun domain. Either eu or us . |
CLIENT_URL | The URL of the Log Owl client. |
MONTHLY_REQUEST_LIMIT | Defines the maximum amount of requests tracked per month. If the limit was reached, incoming requests will no longer be tracked. |
IS_SELFHOSTED | Can either be true or false . If this environment variable is set to true , only one organization can be set up. |
Building from source
Clone the repository and install dependencies with go get
. After adding an .env
file that corresponds to the .example.env
file, you can start the server with go run cmd/log-owl/main.go
.
Client
Local Setup
Clone the repository and install dependencies with npm i
or yarn
and start the development server with npm start
or yarn start
. To create a bundled production build run npm run build
or yarn build
.
Configuration
By default, the client is expecting the backend to be available at http://localhost:2800
. If you use a different port or host Log Owl yourself, you can set the address in public/config.js
before you create a production build.
Hosting
If you want to host Log Owl yourself, but don't want to create your own production build, you can find the static files in the dist/
folder. These files can be hosted like any other website, just make sure to update the backend URL in dist/config.js
.
caution
Log Owl uses cookies to perform authentication. Therefore, it is important that the client and the service share the same top-level domain.