diff --git a/MtApi5/MtApi5Client.cs b/MtApi5/MtApi5Client.cs
index fa690dfa..a28348c0 100755
--- a/MtApi5/MtApi5Client.cs
+++ b/MtApi5/MtApi5Client.cs
@@ -48,7 +48,12 @@ namespace MtApi5
#region Public Methods
public MtApi5Client()
{
- LogConfigurator.Setup(LogProfileName);
+#if (DEBUG)
+ const LogLevel logLevel = LogLevel.Debug;
+#else
+ const LogLevel logLevel = LogLevel.Info;
+#endif
+ LogConfigurator.Setup(LogProfileName, logLevel);
_mtEventHandlers[Mt5EventTypes.OnBookEvent] = ReceivedOnBookEvent;
_mtEventHandlers[Mt5EventTypes.OnTick] = ReceivedOnTickEvent;
@@ -64,6 +69,7 @@ namespace MtApi5
///Port of host connection (default 8222)
public void BeginConnect(string host, int port)
{
+ Log.Info($"BeginConnect: host = {host}, port = {port}");
Task.Factory.StartNew(() => Connect(host, port));
}
@@ -73,6 +79,7 @@ namespace MtApi5
///Port of host connection (default 8222)
public void BeginConnect(int port)
{
+ Log.Info($"BeginConnect: port = {port}");
Task.Factory.StartNew(() => Connect(port));
}
@@ -81,6 +88,7 @@ namespace MtApi5
///
public void BeginDisconnect()
{
+ Log.Info("BeginDisconnect called.");
Task.Factory.StartNew(() => Disconnect(false));
}
@@ -3351,6 +3359,8 @@ namespace MtApi5
{
client.Dispose();
message = string.IsNullOrEmpty(client.Host) ? $"Failed connection to localhost:{client.Port}. {e.Message}" : $"Failed connection to {client.Host}:{client.Port}. {e.Message}";
+
+ Log.Warn(message);
}
if (state == Mt5ConnectionState.Connected)
@@ -3363,6 +3373,8 @@ namespace MtApi5
_client.ServerFailed += _client_ServerFailed;
_client.MtEventReceived += _client_MtEventReceived;
message = string.IsNullOrEmpty(client.Host) ? $"Connected to localhost:{client.Port}" : $"Connected to { client.Host}:{client.Port}";
+
+ Log.Info(message);
}
_connectionState = state;
@@ -3477,6 +3489,8 @@ namespace MtApi5
_connectionState = state;
}
+ Log.Info(message);
+
ConnectionStateChanged?.Invoke(this, new Mt5ConnectionEventArgs(state, message));
}
@@ -3487,6 +3501,7 @@ namespace MtApi5
var client = Client;
if (client == null)
{
+ Log.Warn("SendCommand: No connection");
throw new Exception("No connection");
}
@@ -3496,16 +3511,19 @@ namespace MtApi5
}
catch (CommunicationException ex)
{
+ Log.Warn($"SendCommand: {ex.Message}");
throw new Exception(ex.Message, ex);
}
if (response == null)
{
+ Log.Warn("SendCommand: Response from MetaTrader is null");
throw new ExecutionException(ErrorCode.ErrCustom, "Response from MetaTrader is null");
}
if (response.ErrorCode != 0)
{
+ Log.Warn($"SendCommand: ErrorCode = {response.ErrorCode}. {response}");
throw new ExecutionException((ErrorCode)response.ErrorCode, response.ToString());
}
@@ -3529,12 +3547,14 @@ namespace MtApi5
if (res == null)
{
+ Log.Warn("SendRequest: Response from MetaTrader is null");
throw new ExecutionException(ErrorCode.ErrCustom, "Response from MetaTrader is null");
}
var response = JsonConvert.DeserializeObject>(res);
if (response.ErrorCode != 0)
{
+ Log.Warn($"SendRequest: ErrorCode = {response.ErrorCode}. {response}");
throw new ExecutionException((ErrorCode)response.ErrorCode, response.ErrorMessage);
}