Skip to content
This repository has been archived by the owner on Mar 16, 2023. It is now read-only.

Platform for logging all of your scripts, analyze and alert it!

License

Notifications You must be signed in to change notification settings

andiexer/EagleEye-ScriptLogPlatform

Repository files navigation

EagleEye ScriptLogPlatform (EESLP)

EagleEye ScriptLogPlatform, formerly known as PoshLogMonitor is Platform to handle Script Logfiles. The main purpose is to log scripts into EESLP and analyze the logs.

Folder structure

├── src
|   ├── backend
|   |   ├── backend.gateway.api
|   |   ├── backend.powershellmodule
|   ├── common
|   ├── frontend
|   |   ├── frontend.gateway.api
|   |   ├── frontend.ui
|   ├── services
|   |   ├── alerting.api
|   |   ├── logging.api
|   |   ├── maintenance.api
|   |   ├── script.api
|   |   ├── user.api

Architecture

The whole platform is build on docker microservices developed mostly with .net core/python. As a platform we have chosen openshift (Basically Service Discovery has to be changed for other platforms). In the furture we will fork the project to support also other platforms natively.

Main Features

  • Log running scripts into script instances for easy management and analyzing the logs
  • Set alerts per script (Email?, SMS?, Zabbix?, SCOM?, other Tools?)
  • Powershell Module for easy integration into existing powershell scripts
  • Simple centralized rollover logs per server
  • more to come....

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

  • .Net Core 2.0
  • Docker (incl. Docker Toolbox)
  • NPM
  • Angular cli (install with 'npm install --global @angular/cli')

Build project

Attention: To make the UI work, you need to tell the docker container, which dockerhost ip you have.

  1. Create a file named docker-compose.override.yml on the same location as docker-compose.yml
  2. Add the following content to this file (replace the placeholder with your dockerhost ip)
version: '2'

services:
  frontend.ui:
    environment:
      - "ApiUrl=http://<your dockerhost ip>:5003/api/"

run the script build-bits.ps1

available parameters:

  • SolutionFile (default is EESLP-DockerBITSONly.sln)
  • RemoveDockerImages (removes all running containers starting with eeslp* and all eeslp* iamges)

example:

build-bits.ps1 -RemoveDockerImages

if you wanna remove all docker containers and images only use this powershell script:

remove-dockerimages.ps1

build docker containers and run with docker compose

go to the parent folder where the docker-compose.yml file is. build all containers with the command:

docker-compose build

and run it with following command (-d for)

In case you've got an error from elasticsearch: vm.max_map_count [65530] likely too low, increase to at least [262144].

Use this command to to fix in the docker host: sudo sysctl -w vm.max_map_count=262144

docker-compose up -d 

and stop it

docker-compose down

Built With

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE file for details

Acknowledgments

  • wanna be the first one here? :)