Ditutup

Modify logs activity of an FTP server written in goLang

I would like to modify the logs activity of an FTP server written in goLang

1. Download the server with the command: go get [url removed, login to view]

2. cd %GOPATH%\\src\\[url removed, login to view]\\fclairamb\\ftpserver

3. go build

4. ftpserver

The server must be running correctly. By default the logs are saved in the console, they must be saved in files in the following way.

1. Add in the [url removed, login to view] file the 4 following directives: enable_logs, logs_dir, max_file_logs, logs_request

2. Add for each user the following 3 directives: separately_logs, max_file_logs, logs_request

SEE FILE [url removed, login to view] TO UNDERSTAND DIRECTIVES TO ADD

IMPORTANT: the directives (enable_logs, logs_dir etc...) must be detected in real time! That is to say, if we change the value of a directive, we must take it into account right away.

Example: separately_logs = true means that the server backs up the logs for that user, but if it is changed to false, the server must immediately stop backing up the logs for that user (without restarting the server).

NB: you can add to the server a "configuration reload" via a "golang watcher system" to detect changes in the [url removed, login to view] file in real time. As soon as this file is modified, we reload the configuration. Do what you want most is that changes to these guidelines should be taken into account immediately by the log manager.

NB: what you add must be written by yourself. No copying / pasting of the internet or code portion modification.

NB: for the max_file_logs and logs_request directives you can write an application separately. Example: [url removed, login to view] (it's a simple proposition to not slow down the server - it's up to you)

OF COURSE, YOUR CHANGES MUST BE COMPATIBLE WITH ALL OPERATING SYSTEMS (WINDOWS, LINUX, FREEBSD, MAC ETC ...). ALL SYSTEMS SUPPORTED BY GOLANG.

# --------------------------------------------------------

# SERVER LOGIN

# --------------------------------------------------------

# Save the server logs ?

# The logs will be saved in "logs_dir" defined below. Format: [url removed, login to view] => [url removed, login to view]

enable_logs = true

# Directory logs. If the directory does not exist, we try to create it, if we can not create it, no logs registration

logs_dir = "C:\\ftpServer\\logs\\"

# Leaver only this latest x logs files (see "logs_request" defined below)

max_file_logs = 30

# The action to be applied on the logs files IF $max_file_logs > 0

# - remove: remove, we leave only the last $max_file_logs logs files and we delete the rest

# - compres: we keep the last 30 logs files and we compres the rest before deleting them (compres zip or rar as you want).

# - empty or any other value we do nothing

# Nb: if max_file_logs < 1 or not defined, we do nothing

# Eg:

# logs_request = "remove"

# logs_request = "compres"

logs_request =

# --------------------------------------------------------

# USER LOGIN

# --------------------------------------------------------

# Save the logs for this user separately

# The logs will be saved in %{logs_dir}/%{Login}/[url removed, login to view] (eg: C:\\ftpServer\\logs\\test\\[url removed, login to view])

# Where %{logs_dir} is the logs directory defined above and %{Login} the user logsin

# If the directory does not exist, we try to create them, if we can not create them no logs registration

# NB: if enable_logs defined above is "false", no user separately logs registration

separately_logs = true

# Leaver only this latest 30 logs files (see "logs_request" defined below)

max_file_logs = 30

# The action to be applied on the logs files for the user IF $max_file_logs > 0

# - remove: remove, we leave only the last $max_file_logs logs files and we delete the rest

# - compres: we keep the last 30 logs files and we compres the rest before deleting them (compres zip or rar as you want).

# - empty or any other value we do nothing

# Nb: if max_file_logs < 1 or not defined, we do nothing

# Eg:

# logs_request = "remove"

# logs_request = "compres"

logs_request = "compres"

Kemahiran: Golang

Lihat lagi: go ftp server, dutchcoders goftp, golang ftp server, best golang ftp client, golang ftp example, golang sftp server, jlaffaye ftp example, download ftp golang, ftp server written, mysql ftp server php, mirror file ftp server, open source windows ftp server, upload mysql ftp server, restore file secure ftp server, FTP server, python twisted create ftp server, gta ftp server start, ftp server project, mirror ftp server, russian ftp server

Tentang Majikan:
( 5 ulasan ) France, France

ID Projek: #16175094

4 pekerja bebas membida secara purata €43 untuk pekerjaan ini

rameshpizza

Hi, I am perfect with golang. I understand your requirements. I am willing to do the project. Can we discuss further about this project. Thanks.

€29 EUR dalam 3 hari
(2 Ulasan)
2.9
nathanmkaya

I have worked with Golang for the past 6 months and have a general developer experience of 3 years and linux experience of 4 years

€30 EUR dalam 7 hari
(1 Ulasan)
1.5
€80 EUR dalam 5 hari
(0 Ulasan)
0.0
osmanbeyaz

I'm new on freelance and willing to do ur project cheat to get review score. I can deliver this task within a day, do you have prefer golang default log module or could I use some better alternatives?(ex. logrus)

€34 EUR dalam sehari
(0 Ulasan)
0.0