以下のようなコードでエラーログを別途ファイルに書き込む関数を用意します。
とある教材を参考にしているのですが(そこでは質問出来ない),
LoggingSetting関数処理内の語尾に, それぞれ僕が書いたコメントアウトがそれぞれ何をしているのか知りたいです。
①〜④のご回答を頂けたら幸いです。。
Go
1 2func LoggingSetting(logFile string){ 3 4 logfile, _ := os.OpenFile(logFile, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666) // ① どのように何を開くか 5 6 multiLogFile := io.MultiWriter(os.Stdout, logfile) // ② これはなにをしているのかドキュメントを確認しても理解できません。io.Writerを戻り値として返すの意味が分かってないです。 7 8 log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile) // ③ どのようにログに書くかフラグをセットする? + この関数を実行するだけで実際にlogfileを引数にとらなくても良いのでしょうか? 9 10 log.SetOutput(multiLogFile) // ④ io.Writer?を引数にとって, 実際に書き込む処理をしているのでしょうか。 11 12} 13 14func main() { 15 LoggingSetting("aaaa.log") 16 _, err := os.Open("aaa.txt") 17 if err != nil { 18 log.Fatalln("error!", err) 19 } 20} 21
宜しくお願い致します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。