Schedules - The time zone ID '' was not found on the local computer
PSU version 3.7.2
Clicking run now on a schedule nothing happens in the UI and I get the following error in the logs. Tried a few different time zones and nothing worked including system default.
2023-01-11 16:41:57.042 -06:00 [ERR] An unhandled exception has occurred while executing the request. System.AggregateException: Can't trigger recurring job 'HelloWorld' due to errors (The time zone ID 'Canada/Central' was not found on the local computer.) ---> System.TimeZoneNotFoundException: The time zone ID 'Canada/Central' was not found on the local computer. at System.TimeZoneInfo.FindSystemTimeZoneById(String id) at Hangfire.RecurringJobEntity..ctor(String recurringJobId, IDictionary`2 recurringJob, ITimeZoneResolver timeZoneResolver, DateTime now) --- End of inner exception stack trace --- at Hangfire.RecurringJobManager.Trigger(String recurringJobId) at Hangfire.RecurringJob.Trigger(String recurringJobId) at UniversalAutomation.JobService.TriggerSchedule(Schedule schedule) in C:\actions-runner\_work\universal\universal\src\Universal.Server\Services\Automation\JobService.cs:line 190 at UniversalAutomation.ScheduleController.Trigger(Int64 id) in C:\actions-runner\_work\universal\universal\src\Universal.Server\Controllers\ScheduleController.cs:line 221 at lambda_method223431(Closure , Object , Object[] ) at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Logged|12_1(ControllerActionInvoker invoker) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()
Speaking of timezones is there a way to set it platform wide?
I think this might be the same thing: Script Scheduler not working when setting a timezone · Issue #1690 · ironmansoftware/issues · GitHub
Adam Driscoll
PowerShell Expert and Developer at Devolutions
@Adam Driscoll - Looks like we are seeing this again
023-11-08 14:40:22.354 -06:00 [ERR] An unhandled exception has occurred while executing the request. System.AggregateException: Can't trigger recurring job 'helloworld' due to errors (The time zone ID 'America/Chicago' was not found on the local computer.) ---> System.TimeZoneNotFoundException: The time zone ID 'America/Chicago' was not found on the local computer. at System.TimeZoneInfo.FindSystemTimeZoneById(String id) at Hangfire.RecurringJobEntity..ctor(String recurringJobId, IDictionary`2 recurringJob, ITimeZoneResolver timeZoneResolver, DateTime now) --- End of inner exception stack trace --- at Hangfire.RecurringJobManager.TriggerJob(String recurringJobId) at Hangfire.RecurringJobManager.Trigger(String recurringJobId) at Hangfire.RecurringJob.Trigger(String recurringJobId) at UniversalAutomation.JobService.TriggerSchedule(Schedule schedule) in C:\actions-runner\_work\universal\universal\src\Universal.Server\Services\Automation\JobService.cs:line 257 at UniversalAutomation.ScheduleController.Trigger(Int64 id) in C:\actions-runner\_work\universal\universal\src\Universal.Server\Controllers\ScheduleController.cs:line 224 at lambda_method57290(Closure , Object , Object[] ) at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Logged|12_1(ControllerActionInvoker invoker) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker) at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger) at Microsoft.AspNetCore.Authorization.Policy.AuthorizationMiddlewareResultHandler.HandleAsync(RequestDelegate next, HttpContext context, AuthorizationPolicy policy, PolicyAuthorizationResult authorizeResult) at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context) at PowerShellUniversal.FeatureMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in C:\actions-runner\_work\universal\universal\src\Universal.Server\Middleware\FeatureMiddleware.cs:line 43 at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass6_1.<<UseMiddlewareInterface>b__1>d.MoveNext()
We are running 3.10.1