// Copyright (C) 2019-2023 Nicola Murino // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero General Public License as published // by the Free Software Foundation, version 3. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public License for more details. // // You should have received a copy of the GNU Affero General Public License // along with this program. If not, see . package cmd import ( "fmt" "os" "github.com/spf13/cobra" "github.com/drakkan/sftpgo/v2/internal/service" ) var ( rotateLogCmd = &cobra.Command{ Use: "rotatelogs", Short: "Signal to the running service to rotate the logs", Run: func(_ *cobra.Command, _ []string) { s := service.WindowsService{ Service: service.Service{ Shutdown: make(chan bool), }, } err := s.RotateLogFile() if err != nil { fmt.Printf("Error sending rotate log file signal to the service: %v\r\n", err) os.Exit(1) } else { fmt.Printf("Rotate log file signal sent!\r\n") } }, } ) func init() { serviceCmd.AddCommand(rotateLogCmd) }