1 // 2 // Copyright Aliaksei Levin (levlam@telegram.org), Arseny Smirnov (arseny30@gmail.com) 2014-2021 3 // 4 // Distributed under the Boost Software License, Version 1.0. (See accompanying 5 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 6 // 7 #pragma managed(push, off) 8 #include "td/telegram/Log.h" 9 #pragma managed(pop) 10 11 #include "td/utils/port/CxCli.h" 12 13 #pragma managed(push, off) 14 #include <cstdint> 15 #pragma managed(pop) 16 17 namespace Telegram { 18 namespace Td { 19 20 using namespace CxCli; 21 22 /// <summary> 23 /// Class for managing internal TDLib logging. 24 /// </summary> 25 [DEPRECATED_ATTRIBUTE("Telegram.Td.Log class is deprecated, please use Telegram.Td.Api.*Log* requests instead.")] 26 public ref class Log sealed { 27 public: 28 /// <summary> 29 /// Changes TDLib log verbosity. 30 /// </summary> 31 /// <param name="verbosityLevel">New value of log verbosity level. Must be non-negative. 32 /// Value 0 means FATAL, value 1 means ERROR, value 2 means WARNING, value 3 means INFO, value 4 means DEBUG, 33 /// value greater than 4 can be used to enable even more logging. 34 /// Default value of the log verbosity level is 5.</param> 35 [DEPRECATED_ATTRIBUTE("SetVerbosityLevel is deprecated, please use Telegram.Td.Api.SetLogVerbosityLevel request instead.")] 36 static void SetVerbosityLevel(int verbosityLevel) { 37 ::td::Log::set_verbosity_level(verbosityLevel); 38 } 39 40 /// <summary> 41 /// Sets file path for writing TDLib internal log. By default TDLib writes logs to the System.err. 42 /// Use this method to write the log to a file instead. 43 /// </summary> 44 /// <param name="filePath">Path to a file for writing TDLib internal log. Use an empty path to switch back to logging 45 /// to the System.err.</param> 46 /// <returns>Returns whether opening the log file succeeded.</returns> 47 [DEPRECATED_ATTRIBUTE("SetFilePath is deprecated, please use Telegram.Td.Api.SetLogStream request instead.")] 48 static bool SetFilePath(String^ filePath) { 49 return ::td::Log::set_file_path(string_to_unmanaged(filePath)); 50 } 51 52 /// <summary> 53 /// Changes the maximum size of TDLib log file. 54 /// </summary> 55 /// <param name="maxFileSize">The maximum size of the file to where the internal TDLib log is written 56 /// before the file will be auto-rotated. Must be positive. Defaults to 10 MB.</param> 57 [DEPRECATED_ATTRIBUTE("SetMaxFileSize is deprecated, please use Telegram.Td.Api.SetLogStream request instead.")] 58 static void SetMaxFileSize(std::int64_t maxFileSize) { 59 ::td::Log::set_max_file_size(maxFileSize); 60 } 61 }; 62 63 } // namespace Td 64 } // namespace Telegram 65