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