Better logging of k8s exceptions
This commit is contained in:
parent
2fae9505d6
commit
abb9560b6d
|
@ -1,4 +1,5 @@
|
|||
using Logging;
|
||||
using Newtonsoft.Json;
|
||||
using Utils;
|
||||
|
||||
namespace KubernetesWorkflow
|
||||
|
@ -194,19 +195,35 @@ namespace KubernetesWorkflow
|
|||
}
|
||||
|
||||
private void K8s(Action<K8sController> action)
|
||||
{
|
||||
try
|
||||
{
|
||||
var controller = new K8sController(log, cluster, knownK8SPods, numberSource, k8sNamespace);
|
||||
action(controller);
|
||||
controller.Dispose();
|
||||
}
|
||||
catch (k8s.Autorest.HttpOperationException ex)
|
||||
{
|
||||
log.Error(JsonConvert.SerializeObject(ex));
|
||||
throw;
|
||||
}
|
||||
}
|
||||
|
||||
private T K8s<T>(Func<K8sController, T> action)
|
||||
{
|
||||
try
|
||||
{
|
||||
var controller = new K8sController(log, cluster, knownK8SPods, numberSource, k8sNamespace);
|
||||
var result = action(controller);
|
||||
controller.Dispose();
|
||||
return result;
|
||||
}
|
||||
catch (k8s.Autorest.HttpOperationException ex)
|
||||
{
|
||||
log.Error(JsonConvert.SerializeObject(ex));
|
||||
throw;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public interface ILogHandler
|
||||
|
|
|
@ -33,9 +33,9 @@ namespace CodexContractsPlugin
|
|||
{
|
||||
return DeployContract(container, workflow, gethNode);
|
||||
}
|
||||
catch
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log("Failed to deploy contract.");
|
||||
Log("Failed to deploy contract: " + ex);
|
||||
Log("Downloading Codex SmartContracts container log...");
|
||||
ci.DownloadLog(container);
|
||||
throw;
|
||||
|
|
Loading…
Reference in New Issue