O código abaixo foi uma forma que eu pensei para deixar mais dinâmico e fazer com que o usuário digite o site desejado.
package main
import (
"fmt"
"net/http"
"os"
"time"
)
func main() {
infoSistema()
dadosCadastro()
for {
exibeMenu()
comando := lerComando()
//fmt.Scan(&comando)
switch comando {
case 1:
iniciarMonitoramento()
case 2:
fmt.Println("Opção 2 - Exibir Logs")
case 0:
fmt.Println("Opção 0 - Sair do sistema")
os.Exit(0)
default:
fmt.Println("Opção inválida.")
os.Exit(-1)
}
}
}
func infoSistema() {
now := time.Now()
fmt.Println(now.Format("Hora Atual: " + "15:4"))
fmt.Println("Sistema para verificar se os sites estão onlines.")
fmt.Println("Versão do Sistema 1.1")
}
func dadosCadastro() {
fmt.Print("Digite o seu Nome: ")
var nome string
fmt.Scan(&nome)
fmt.Println("Olá, Sr(a)", nome)
}
func exibeMenu() {
fmt.Println("Escolha alguma das opções abaixo: ")
fmt.Println("1- Iniciar o monitoramento")
fmt.Println("2- Exibir Logs")
fmt.Println("0- Sair")
}
func lerComando() int {
var comandoLido int
fmt.Scan(&comandoLido)
//fmt.Println("O comando escolhido foi ", comandoLido)
return comandoLido
}
func iniciarMonitoramento() {
fmt.Println("Opção 1 - Iniciar monitoramento")
fmt.Print("Digite o site: ")
var site string
fmt.Scan(&site)
//site := "https://www.alura.com.br/555"
var https string = "https://"
resp, _ := http.Get(https + site)
if resp.StatusCode == 200 {
fmt.Println("Site: ", site, "Online!")
} else {
fmt.Println("Site: ", site, "Offline!")
fmt.Println("Status: ", resp.StatusCode)
}
}