Unable to Start Dahboards and Run Scripts After Update

After upgrading PSU from 1.5.7 to 1.5.13 I’m not able to start my dashboards or run scripts. Starting my dashboards will not give me any error messages, they will just continue loading. Running scripts show the following error message.

I’m hosting on IIS and I followed these instructions to upgrade. I didn’t use the scripts, just followed the steps. When looking at the logs I noticed the following, which I believe is the root of the problem, but I’m not sure how to fix it.

2021-03-10T15:16:45.5706909-08:00 0HM740IQUL1BA:00000006 [DBG] The request path “” does not match the path filter (c4ce145c)
2021-03-10T15:16:45.5707148-08:00 0HM740IQUL1BA:00000006 [DBG] 1 candidate(s) found for the request path ‘"/api/v1/environment"’ (9406aaa8)
2021-03-10T15:16:45.5707311-08:00 0HM740IQUL1BA:00000006 [DBG] Endpoint ‘“UniversalAutomation.ExecutionEnvironmentController.Get (UniversalAutomation)”’ with route pattern ‘“api/v1/environment”’ is valid for the request path ‘"/api/v1/environment"’ (430aaaf2)
2021-03-10T15:16:45.5707427-08:00 0HM740IQUL1BA:00000006 [DBG] Request matched endpoint ‘“UniversalAutomation.ExecutionEnvironmentController.Get (UniversalAutomation)”’ (cbf60c4b)
2021-03-10T15:16:45.5719459-08:00 0HM740IQUL1BA:00000006 [DBG] AuthenticationScheme: “Cookies” was not authenticated. (1152f827)
2021-03-10T15:16:45.5719732-08:00 0HM740IQUL1BA:00000006 [DBG] AuthenticationScheme: “Bearer” was not authenticated. (1152f827)

Product: PowerShell Universal
Version: 1.5.13

Did you take a backup per the instructions?? I would recommend rolling back and following the guide here.

I cannot verify my methodology will always work - in fact I’m working on a bug with Task Scheduler now. I can say 100% I’ve used the code in that guide to upgrade through the past 3 versions on a production dashboard but task scheduler can often cause issues.

My only thought on things not working as intended if you followed all of the same steps as the scripts is that you missed something somewhere along the lines, or your environment is otherwise configured differently.

Additionally, there are a number of steps in my guide which are quite specific to automatic updates. When you say you followed the steps, do you mean you followed the guide steps or you executed the steps in the scripts step by step?

I felt as I didn’t have to back up because I created a folder for each version of PSU and in my site settings I just change the physical path to the version that I want to use.

I actually followed a mixture of your instructions and the instructions in the link you provided. These are the steps I took:

  1. Stopped the WebSite in IIS
  2. Stopped the AppPool in IIS
  3. Downloaded, extracted and unblocked the zip version of PSU
  4. Replaced the appsettings/web.config files in the new version with those from the working version.
  5. Edited the web.config file to look for Universal.Server.exe in the Universal.win7-x64.1.5.14 intead of the old version.
  6. In IIS I changed the physical path for my site to the location of the extracted files, C:\inetpub\wwwroot\Universal.win7-x64.1.5.14
  7. Started the AppPool in IIS
  8. Started the WebSite in IIS

The admin console launches with no problems but the dashboards wont start and scripts wont run. I noticed that the latest version of PSU, C:\inetpub\wwwroot\Universal.win7-x64.1.5.14\UniversalDashboard\Frameworks, didnt include the 3.1.1 framework, which is the one my dashboards use, so I copy-pasted the 3.1.1 folder from my previous version of PSU. Could this be the issue?

Thank you for your reply.

Tagging @adam for additional help.

That could be why the dashboards won’t start. I’d also look in the dashboard log in the management console. It might have more information.

The jobs are another story. I would 100% validate that the unblock-file worked. If it fails, it does so silently.

Right click on a DLL in the installation directory and validate that the unblock check box isn’t there.

image

Another thing you can try is to increase the log level to debug (appsettings.json), and then it will output the command line of the PS processes it is starting for jobs and dashboards. You can then attempt to run that manually to see if any errors are present in the console.

1 Like

That’s the thing, the dashboards are not producing a log at all when I click ‘Start’ or ‘Restart.’

The files are unblocked.

I already had Debug as the default for ‘Logging.’ Is this what you mean?

2021-03-11T02:00:07.9368698-08:00 [DBG] Starting C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe with command line -NoProfile -Command “& { [System.Reflection.Assembly]::LoadFrom(‘C:\inetpub\wwwroot\Universal.win7-x64.1.5.14\Host-v5\Host.dll’) | Out-Null; [UniversalHost.AgentService]::StartJob(56882, 4196) }” (6ada473f)

2021-03-11T02:00:07.9368846-08:00 [INF] Starting job using Process. (4d0a5a43)

2021-03-11T02:00:16.3501460-08:00 [INF] Error executing job 5131: Did not receive port from client process. at UniversalAutomation.ExecutionService.ExecutePowerShell(Script script, IEnumerable`1 parameters, Job job, Schedule schedule, Int32 port, ExecutionCallback callback) in D:\a\universal\universal\src\UniversalAutomation\Services\ExecutionService.cs:line 438
at UniversalAutomation.ExecutionService.TryExecute(Job job, Schedule schedule) in D:\a\universal\universal\src\UniversalAutomation\Services\ExecutionService.cs:line 318
at UniversalAutomation.ExecutionService.Execute(Job job, Schedule schedule) in D:\a\universal\universal\src\UniversalAutomation\Services\ExecutionService.cs:line 178 System.Exception (a579d1d9)

The screenshot of the file you just sent is actually a blocked file. That entire security section won’t exist if it’s unblocked.

Try elevating your command prompt before running Unblock-File

1 Like

Ah! That worked! Thank you so much, now I know for future updates. Thank you so much!

I did encounter another issue though, one of the dashboards just gives me a blank screen. I’m almost positive it has to do with permissions as its the only dashboard that has authentication. Before the update it worked perfectly. I looked that the log and found the following.

Confirmed it has to do with authentication after disabling it.

2021-03-11T11:24:18.2692524-08:00 0HM74O7JKUE94:00000002 [DBG] The request path “” does not match the path filter (c4ce145c)
2021-03-11T11:24:18.2692762-08:00 0HM74O7JKUE94:00000002 [DBG] No candidates found for the request path ‘"/admin/Security.5a1d909a1b4f9da1adbd.bundle.js"’ (76d5928c)
2021-03-11T11:24:18.2692874-08:00 0HM74O7JKUE94:00000002 [DBG] Request did not match any endpoints (328c36bf)
2021-03-11T11:24:18.2699298-08:00 0HM74O7JKUE94:00000002 [INF] /admin/Security.5a1d909a1b4f9da1adbd.bundle.js (68156c53)
2021-03-11T11:24:18.2700864-08:00 0HM74O7JKUE94:00000002 [INF] C:\inetpub\wwwroot\Universal.win7-x64.1.5.14\UniversalAutomation\Security.5a1d909a1b4f9da1adbd.bundle.js (3936ea61)
2021-03-11T11:24:18.2701595-08:00 0HM74O7JKUE94:00000002 [INF] application/javascript (a8c11a6b)
2021-03-11T11:24:18.2703033-08:00 0HM74O7JKUE94:00000002 [INF] Executing “Microsoft.AspNetCore.Mvc.PhysicalFileResult”, sending file ‘“C:\inetpub\wwwroot\Universal.win7-x64.1.5.14\UniversalAutomation\Security.5a1d909a1b4f9da1adbd.bundle.js”’ with download name ‘""’ … (5a6f99a2)
2021-03-11T11:24:18.2703669-08:00 0HM74O7JKUE94:00000002 [DBG] The file result has not been enabled for processing range requests. To enable it, set the property ‘EnableRangeProcessing’ on the result to ‘true’. (19ab6223)
2021-03-11T11:24:18.2704014-08:00 0HM74O7JKUE94:00000002 [DBG] No response compression available for HTTPS requests. See ResponseCompressionOptions.EnableForHttps. (f944757d)
2021-03-11T11:24:18.3709481-08:00 0HM74O7JKUE94:00000002 [DBG] Connection id ““0HM74O7JKUE94"” completed keep alive response. (9784cde9)
2021-03-11T11:24:18.3713215-08:00 0HM74O7JKUE94:00000002 [INF] Request finished in 102.5122ms 200 application/javascript (791a596a)
2021-03-11T11:24:18.4436926-08:00 0HM74O7JKUE94:00000003 [INF] Request starting HTTP/1.1 GET http://server/api/v1/settings/authentication (ca22a1cb)
2021-03-11T11:24:18.4439390-08:00 0HM74O7JKUE94:00000003 [DBG] The request path “” does not match the path filter (c4ce145c)
2021-03-11T11:24:18.4439997-08:00 0HM74O7JKUE94:00000003 [DBG] 1 candidate(s) found for the request path '”/api/v1/settings/authentication"’ (9406aaa8)
2021-03-11T11:24:18.4440285-08:00 0HM74O7JKUE94:00000003 [DBG] Endpoint ‘“UniversalAutomation.SettingsController.GetAuthenticationMethods (UniversalAutomation)”’ with route pattern ‘“api/v1/settings/authentication”’ is valid for the request path ‘"/api/v1/settings/authentication"’ (430aaaf2)
2021-03-11T11:24:18.4440436-08:00 0HM74O7JKUE94:00000003 [DBG] Request matched endpoint ‘“UniversalAutomation.SettingsController.GetAuthenticationMethods (UniversalAutomation)”’ (cbf60c4b)
2021-03-11T11:24:18.4455738-08:00 0HM74O7JKUE94:00000003 [DBG] AuthenticationScheme: “Cookies” was not authenticated. (1152f827)
2021-03-11T11:24:18.4456354-08:00 0HM74O7JKUE94:00000003 [DBG] AuthenticationScheme: “Bearer” was not authenticated. (1152f827)
2021-03-11T11:24:18.4456758-08:00 0HM74O7JKUE94:00000003 [INF] Authorization failed. (b15dd539)
2021-03-11T11:24:18.4457059-08:00 0HM74O7JKUE94:00000003 [INF] AuthenticationScheme: “Cookies” was challenged. (d45f1f38)
2021-03-11T11:24:18.4457255-08:00 0HM74O7JKUE94:00000003 [INF] AuthenticationScheme: “Bearer” was challenged. (d45f1f38)