Event Schedule v1.0.18 - Schedule multiple log entries, and Jira-related enhancements!

Ok, so we got through the date token and calculation updates. Now, I finally get to use this meme for something:

Be a lot cooler if you could automate all the things ever

We continue on with our march through turning Event Schedule for Seq into its own distinct and unique entity that works with other apps to provide a useful automation tool. This time, I contemplated that it seems fairly redundant to have to configure multiple instances of Event Schedule to create multiple Jira issues. What if we could just configure one instance from a common template? (Be a lot cooler if we could ...)

I've added the following features;

  • Multi-log Token - a key-pair value (configured as a comma-separated list of Name=Value). For templating purposes, these can be referenced as the tokens {LogToken} for Name, and {LogTokenValue} for Value in the Scheduled log message, Scheduled log description, and Scheduled log tags properties. Each key must, of course, be unique.
  • Token to responder mapping - optionally allowing a comma-separated list of Token=Responder, where token corresponds to the multi-log tokens configured.
  • Custom token list - You can specify any valid key pair as a comma-separated list of TokenName=Value. to provide the ability to use {TokenName} in the Scheduled log message, Scheduled log description, and Scheduled log tags properties. This allows for static token substitution, although I'm not totally sold on the value of this one.

This allows a Multi-log token setting of:

IT4=IT Maintenance Task - Servers,
IT30=IT Maintenance Task - Patching,
IT39=IT Maintenance Task - Monitoring

and a Responders setting of:

IT4=JSmith,
IT30=BJones,
IT39=JDoe

with the Scheduled log message:

{LogToken} - {LogTokenLong} - {MMMM yyyy-1m} - Review

and the Scheduled log description:

Please check "{LogTokenLong}" for {MMMM yyyy-1m}.\n\nThis ensures we have a working environment.

and the Scheduled log tags:

{LogToken},IT_{MMMyy-1m}

to cause 3 distinct issues to be raised in the target Jira project via the Seq.App.Atlassian.Jira app, and automatically assigned to the correct person! This operates according to your configured schedule - so 30 tickets correctly created at the start of the day, week, month becomes child's play! If you desperately wanted, you could automatically create them every hour (uh, this is not a good idea, don't do this).

On top of this, I've also added some features that are Jira-related (but could be used for other purposes with similar apps). 

  • Optionally pass the Initial Time Estimate as the InitialTimeEstimate property
  • Optionally pass the Remaining Time Estimate as the RemainingTimeEstimate property
  • Optionally pass the Due Date as the DueDate property
  • Optionally pass the Project Key as the ProjectKey property

This, combined with some updates to Seq.App.Atlassian.Jira that are pending merge, means that a single Jira app instance will be able monitor one or more Event Schedule instances and create issues in the way required by the target project(s), even where due date and/or time tracking features are required. I'll talk about those updates soon.

I've built time expressions into this, so you can express the estimates and due date as valid Jira date expressions, eg.

1d 1h 1m
1h 1m
1m
1d
1d 1m

You can also specify a valid yyyy-mm-dd date for due date - but using a date expression will automatically translate to a valid due date, so is likely preferable.

This enhancement means that leveraging Seq as a key piece of automation by using log entries to drive app interactions - like Jira - is even easier, and incredibly powerful!

You can update your existing install from within Seq, install Event Schedule to your Seq instance using the Seq.App.EventSchedule Nuget tag, or otherwise - the fanciness of the below links is well known.

 

Comments

You may also like:

Seq.App.EventTimeout v1.4.5 Released

I've released a new update to Event Timeout for Seq, which improves the handling of 24 hour windows (eg. Start 00:00, End 00:00) and how repeat timeouts operate. Ordinarily, Event Timeout is forward looking - it always calculates the next start time if the configured start time would fall in...

Seq Reporter - Turn your structured logs into scheduled reports!

Uhh ... You want what? So, you have all your apps logging to Seq, perhaps you have monitoring and alerting using apps like the Seq OpsGenie client, and maybe you're even using Event Timeout to detect events that didn't happen in time. Things are going great, except ... Well,...

Calculating timeouts with Event Timeout for Seq

We use quite a number of Event Timeout instances in our Seq environment, to detect processes that have not completed in time. The nature of the Seq.App.EventTimeout implementation is one that relies on a timeout in seconds, and this can result in keeping track of quite a few different calculations....