Golang - Windows and Linux Log collection

Færdiggjort Opslået 5 år siden Betalt ved levering
Færdiggjort Betalt ved levering

Hi,

We have a REST API that’s used to receive log data and provide configurations for what information to log from a host. We would like to develop a Golang application to retrieve logs and basic metrics from a host. This application will run on a client and send logs to the REST API. The client side application is not responsible for parsing logs (no regex needed) just collecting the information and sending it. This will be installed on Windows or Linux as a service and would need to be constantly online.

The functionality is similar to the beats products such as Filebeats, Winlogbeats, and Metricbeats. As these are opensource and written in Go, it is fine to use parts of the applications but we’re not interested in just making a plugin for these to adapt to our system. Unlike the beats products that have many options, we want to focus on just the key functions below.

Retrieve configuration from API:

By doing a REST get and providing the host id, the API will return a configuration that defines which logs to retrieve and which metrics to collect.

Collecting logs from Windows:

The application should query Windows event logs (System, Application, and Security), convert to json format, and then forward to our REST API. The application should keep track so that it does not read in duplicate logs.

Collecting logs from Linux and files in Windows:

The logs are defined in the configuration with a wildcard to support log rotate. Unlike systems like Splunk or beats, we do not need to monitor all files in a directory. We really only need to support monitoring a single file, but support collecting from a rotated file when the log is rotated. Our current method is to monitor a single file, but when a file is smaller than it was when last read, we look to the rotated file to ensure no logs were missed.

Metrics from Linux and Windows:

Though other system collect detailed metrics, we support fairly basic collection of metrics. We do plan to expand these in the future but for now we are just collecting these items.

-Processes with RAM and CPU

-Services with current state

-Uptime

-RAM utilization

-CPU utilization

-Disk utilization

Host Information:

We collect basic information about the host infrequently. This is typically done on an hourly or daily basis.

GUID

-Uptime

-Processor info

-Ram info

-Open ports

-List Installed applications

-Network information (Interfaces, IPs, etc…)

Golang Linux Software Arkitektur

Projekt ID: #19233753

Om projektet

11 bud Remote projekt Aktiv 5 år siden

Tildelt til:

ClintonCollins

Hey there, I can build you what you're looking for. I have over six years of software development experience and ten years of system administration. Similar experience I have is building remote clients for a cont Flere

$750 USD in 14 dage
(16 bedømmelser)
5.4

11 freelancere byder i gennemsnit $893 timen for dette job

stefkev

Hi, I can make a rest api service for you to pick up logs that you requested windows/linux os's. If interested, contact me.

$750 USD in 7 dage
(15 bedømmelser)
5.7
mlys

Hello, let me help you with your Golang/Python/REST/subprocess/websockets project. I have good experience also in Kubernetes and Docker with UI on Flask/Python. I have deep knowledge in CI/CD software development as on Flere

$777 USD in 10 dage
(32 bedømmelser)
5.5
coco50511

Hi. hope you are doing well. I'm a golang developer which have 12 years of development experience on windows and linux. No problem to implement your require. I'm looking forward to hearing from you. Thanks, regards Flere

$1000 USD in 10 dage
(1 bedømmelse)
4.5
yyq2008

I have done a golang project named log collector, this project parses rotated log files line by line and send it via rest api, your requirement is just upload the whole file via rest or or just send line by line and ad Flere

$250 USD in 10 dage
(3 bedømmelser)
2.9
paragsnikam

Will give you on time service.

$444 USD in 10 dage
(0 bedømmelser)
0.0
cameron2020

Meeting spec requirements + CI pipeline/installation package creation (deb/RPM/exe) and unit tests.

$2777 USD in 7 dage
(0 bedømmelser)
0.0
adamtang26

I have done golang projects for windows, macos, linux and raspbian. Most golang projects i have done will need to retrieve the system logs or parameters.

$750 USD in 30 dage
(0 bedømmelser)
0.0
phuocdongxoai

Recently I have worked with system monitoring and log collection for a project. We used EFK stack and NodeJS. I think it would be easier to monitor the system logs. We just start a go-routine and wait for logs changes Flere

$555 USD in 10 dage
(0 bedømmelser)
0.0