diff --git a/NOCQ.userprefs b/NOCQ.userprefs index 2a64010..02029e3 100644 --- a/NOCQ.userprefs +++ b/NOCQ.userprefs @@ -2,9 +2,24 @@ - - + + + + + + + + + + + + + + + + + diff --git a/src/NOCQ/DB/RedisDataase.cs b/src/NOCQ/DB/RedisDataase.cs index 3166e72..609e3cc 100644 --- a/src/NOCQ/DB/RedisDataase.cs +++ b/src/NOCQ/DB/RedisDataase.cs @@ -9,29 +9,30 @@ namespace NOCQ { public RedisDataase(){} - public static async Task SaveAlert(IAlert alert) + public static async Task SaveAlert(Alert alert, string q) { - using (var redis = new RedisClientAsync(ConfigurationManager.AppSettings["DBQueueKey"], + using (var redis = new RedisClientAsync(q, Convert.ToInt32(ConfigurationManager.AppSettings["Port"]), Convert.ToInt32(ConfigurationManager.AppSettings["Timeout"]) )) { - await redis.LPush(ConfigurationManager.AppSettings["DBQueueKey"], alert); + await redis.LPush(q, alert); } } - public static async Task GetNextAlert() + public static async Task GetNextAlert(string q) { - using (var redis = new RedisClientAsync(ConfigurationManager.AppSettings["DBQueueKey"], + + using (var redis = new RedisClientAsync(q, Convert.ToInt32(ConfigurationManager.AppSettings["Port"]), Convert.ToInt32(ConfigurationManager.AppSettings["Timeout"]) )) { - var ts = await redis.RPop(ConfigurationManager.AppSettings["DBQueueKey"]); + var ts = await redis.RPop(q); - return JsonConvert.DeserializeObject(ts); + return await JsonConvert.DeserializeObjectAsync(ts); } } diff --git a/src/NOCQ/DB/RedisQueues.cs b/src/NOCQ/DB/RedisQueues.cs new file mode 100644 index 0000000..e6c8556 --- /dev/null +++ b/src/NOCQ/DB/RedisQueues.cs @@ -0,0 +1,12 @@ +using System; +using System.Configuration; + +namespace NOCQ +{ + public struct RedisQueues + { + public static string Input = ConfigurationManager.AppSettings["DBQueueInput"]; + public static string Output = ConfigurationManager.AppSettings["DBQueueOutput"]; + } +} + diff --git a/src/NOCQ/Model/Alert.cs b/src/NOCQ/Model/Alert.cs index d0fb4a5..226666c 100644 --- a/src/NOCQ/Model/Alert.cs +++ b/src/NOCQ/Model/Alert.cs @@ -2,7 +2,7 @@ using System; namespace NOCQ { - public class Alert : IAlert + public class Alert { public DateTime TimeStamp {get; set;} public string Source {get;set;} diff --git a/src/NOCQ/Model/IAlert.cs b/src/NOCQ/Model/IAlert.cs deleted file mode 100644 index 2de249d..0000000 --- a/src/NOCQ/Model/IAlert.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; - -namespace NOCQ -{ - public interface IAlert - { - DateTime TimeStamp {get; set;} - string Source {get;set;} - string System {get;set;} - string Service {get;set;} - string Data {get;set;} - string Runbook {get; set;} - string Severity {get;set;} - } -} - diff --git a/src/NOCQ/NOCQ.csproj b/src/NOCQ/NOCQ.csproj index 234fc59..da637ce 100644 --- a/src/NOCQ/NOCQ.csproj +++ b/src/NOCQ/NOCQ.csproj @@ -73,6 +73,7 @@ + diff --git a/src/NOCQ/Plugins/Email/ImapInput.cs b/src/NOCQ/Plugins/Email/ImapInput.cs index 45a579b..9930fed 100644 --- a/src/NOCQ/Plugins/Email/ImapInput.cs +++ b/src/NOCQ/Plugins/Email/ImapInput.cs @@ -19,6 +19,7 @@ namespace NOCQ.Plugins.Email DateTime lastRun { get; set; } IEnumerable parseRules{ get; set; } + public ImapInput (dynamic settings) { var sets = settings as EmailSettings;