Where do the UpdateInstallationWizard.aspx logs get saved in Azure PaaS?Where is the location of local...

Is having a hidden directory under /etc safe?

What does it mean by "d-ism of Leibniz" and "dotage of Newton" in simple English?

Did Darth Vader wear the same suit for 20+ years?

How can I add depth to my story or how do I determine if my story already has depth?

Concise way to draw this pyramid

How can Iron Man's suit withstand this?

How can I offer a test ride while selling a bike?

Is it a problem that pull requests are approved without any comments

What does War Machine's "Canopy! Canopy!" line mean in "Avengers: Endgame"?

Why is Colorado so different politically from nearby states?

Strange math syntax in old basic listing

Applicants clearly not having the skills they advertise

Filling region bounded by multiple paths

Short story written from alien perspective with this line: "It's too bright to look at, so they don't"

Could a guilty Boris Johnson be used to cancel Brexit?

Word for a small burst of laughter that can't be held back

Please help me identify this plane

How to provide realism without making readers think grimdark

Is American Express widely accepted in France?

Accidentally cashed a check twice

How is it possible for this NPC to be alive during the Curse of Strahd adventure?

Opposite of "Squeaky wheel gets the grease"

Humans meet a distant alien species. How do they standardize? - Units of Measure

Is it possible for people to live in the eye of a permanent hypercane?



Where do the UpdateInstallationWizard.aspx logs get saved in Azure PaaS?


Where is the location of local sitecore media cache folder in Azure Web Apps?Where do upgrade packages go to when uploaded?Sitecore Azure PaaS Deployment - ResourceDeploymentFailure | DeploymentFailed | BadRequestSitecore Azure Paas - PostFailedForSomeDocumentsException: Partial success for insert or update. Some documents succeeded'Microsoft.Web.Deployment.DeploymentException: The path '' is not valid for the 'dbFullSql' providerPackaging a Sitecore 9 solution with the Sitecore Azure ToolkitSitecore-Core-Index rebuild at Azure Search for Sitecore 9.0.1 PaaS failsAzure PaaS Publishing PerformanceMaintenance.lock file persist intermittently during Azure PaaS DeploymentImage Editor actions throws “Parameter not valid.”SXA server error page not working in Azure PaaS













1















The title says it all.



Sitecore 9.0.1.



I've looked in the App_Data/logs and temp folders (the temp/__upgrade folder is not present).



I know the installationLog.txt file is going somewhere... But WHERE?










share|improve this question



























    1















    The title says it all.



    Sitecore 9.0.1.



    I've looked in the App_Data/logs and temp folders (the temp/__upgrade folder is not present).



    I know the installationLog.txt file is going somewhere... But WHERE?










    share|improve this question

























      1












      1








      1








      The title says it all.



      Sitecore 9.0.1.



      I've looked in the App_Data/logs and temp folders (the temp/__upgrade folder is not present).



      I know the installationLog.txt file is going somewhere... But WHERE?










      share|improve this question














      The title says it all.



      Sitecore 9.0.1.



      I've looked in the App_Data/logs and temp folders (the temp/__upgrade folder is not present).



      I know the installationLog.txt file is going somewhere... But WHERE?







      azure paas update-packages






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 9 hours ago









      Dan SinclairDan Sinclair

      2,6782729




      2,6782729






















          2 Answers
          2






          active

          oldest

          votes


















          3














          There are likely additional places and methods for retrieving this data, but the following is typically what I resort to:



          Note: I have not tested SPECIFICALLY for UpdateInstallationWizard logs




          1. In Azure Portal, select the App Service resource that you used to run the installation.

          2. Scroll down the blade and find App Service logs in the Monitoring section

          3. Turn Application Logging (Filesystem) On

          4. Change Level to Verbose

          5. Save


          App Service Logs




          1. Select Log stream from Monitoring section

          2. Select Application logs


          Log stream



          At this point, you will need to rerun the installation to capture new logs. Via Log stream you can view the current output of logs. If you wish to view historical logs (if you've previously configured this)- then you'll need to use Kudu.



          Kudu




          1. From the App Service blade you used previously, select Advanced Tools from the Development Tools section.


          Kudu access




          1. Then press Go -> to open Kudu in a separate window

          2. From the new window select Debug console > PowerShell


          Kudu PowerShell




          1. Next, drill down into Log Files/Application to view historically captured log files


          By selecting Verbose previously, the log files will contain all messages. At this point, it's a matter of searching the log file for messages related to your installation.



          Application logs



          temp__upgrade Location



          From Kudu, you can also drill down into that particular folder:



          sitewwwroottemp



          Though I cannot confirm that the expected files will appear there as the instance I'm referencing does not have them (though it has many other expected temp files).






          share|improve this answer
























          • The first approach works well for watching logs, but unfortunately the update installation wizard logs don't show up there. Also unfortunately, Kudu's consoles do not show all the files because they open in a sandboxed version. sad trombone

            – Dan Sinclair
            5 hours ago



















          2














          The files are stored in the temp folder, which is defined by a variable in the configs:



          <sc.variable name="tempFolder" value="d:localtemp"/>


          Unfortunately, browsing this folder with Kudu does not show the files in question because Kudu provisions a sandbox environment which does not contain the files.



          Using Vlad's answer on a similar topic as a starting point, I was able to write up a simple temp folder browser which generates links to the files through the Sitecore.TempRequestHandler (Sitecore.Resources.TempRequestHandler, Sitecore.Kernel).



          Throw this in an .aspx page in your /sitecore/admin folder to use it.



          <html xmlns="http://www.w3.org/1999/xhtml">
          <head runat="server">
          <title>Sitecore Temp Folder Browser</title>
          <link rel="Stylesheet" type="text/css" href="/sitecore/shell/themes/standard/default/WebFramework.css" />
          <link rel="Stylesheet" type="text/css" href="./default.css" />
          </head>
          <body>
          <script runat="server">
          private const string TEMP_FOLDER_PATH = @"d:localtemp";
          private const int MAX_FILE_COUNT = 10;

          private void Scan(string path) {
          string maxFileCountString = GetQueryString("maxFileCount");
          int maxFileCount = MAX_FILE_COUNT;
          if (!string.IsNullOrEmpty(maxFileCountString) && !int.TryParse(maxFileCountString, out maxFileCount))
          {
          Response.Write("<li><span style='color:red'>Invalid value for the <i>maxFileCount</i> parameter. It must be an integer.</span></li>");
          }
          else
          {
          if (!System.IO.Directory.Exists(path))
          {
          Response.Write("<li><span style='color:red'>Invalid path. The path does not exist: " + path + "</span></li>");
          }
          else
          {
          string ignoredFolderNamesString = GetQueryString("ignoreFolderNames");
          string[] ignoredFolderNames;
          if (!string.IsNullOrEmpty(ignoredFolderNamesString))
          {
          ignoredFolderNames = ignoredFolderNamesString.Split(',');
          }
          else
          {
          ignoredFolderNames = new string[0];
          }

          if (path.EndsWith("\") || path.EndsWith("/"))
          {
          path = path.Substring(0, path.Length - 1);
          }

          ScanRecursive(path, maxFileCount, ignoredFolderNames);
          }
          }
          }

          private void ScanRecursive(string path, int maxFileCount, string[] ignoredFolderNames)
          {
          Response.Write("<li>");
          Response.Write("<a href='?maxFileCount=" + maxFileCount + "&ignoreFolderNames=" + string.Join(",", ignoredFolderNames) + "&subPath=" + path.Replace(TEMP_FOLDER_PATH, string.Empty) + "'>");
          Response.Write(System.IO.Path.GetFileName(path));
          Response.Write("</a>");
          Response.Write("</li>");

          if (!ignoredFolderNames.Any(s => s.Equals(System.IO.Path.GetFileName(path), StringComparison.OrdinalIgnoreCase))) {
          Response.Write("<ul>");
          foreach (var directory in System.IO.Directory.GetDirectories(path)) {
          ScanRecursive(directory, maxFileCount, ignoredFolderNames);
          }
          int count = 0;
          foreach (var file in System.IO.Directory.GetFiles(path)) {
          if (++count > maxFileCount) {
          Response.Write("<li>...</li>");
          break;
          }
          Response.Write("<li><i>");
          Response.Write("<a href='" + file.Replace(TEMP_FOLDER_PATH, "/-/temp/") + ".aspx' target='_blank'>");
          Response.Write(System.IO.Path.GetFileName(file));
          Response.Write("</a>");
          Response.Write("</i></li>");
          }
          Response.Write("</ul>");
          }
          else
          {
          Response.Write("<ul><li><i>(ignored due to query string)</i></li></ul>");
          }
          }

          private string GetQueryString(string key) {
          return Request.QueryString[key];
          }
          </script>
          <form id="Form1" runat="server" class="wf-container">
          <div class="wf-content">
          <h1>Sitecore Temp Folder Browser</h1>
          <% string fullPath = TEMP_FOLDER_PATH + GetQueryString("subPath"); %>
          <h4><%= fullPath %></h4>
          <ul>
          <%
          Scan(fullPath);
          %>
          </ul>
          </div>
          </form>
          </body>
          </html>





          share|improve this answer


























            Your Answer








            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "664"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsitecore.stackexchange.com%2fquestions%2f19061%2fwhere-do-the-updateinstallationwizard-aspx-logs-get-saved-in-azure-paas%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            3














            There are likely additional places and methods for retrieving this data, but the following is typically what I resort to:



            Note: I have not tested SPECIFICALLY for UpdateInstallationWizard logs




            1. In Azure Portal, select the App Service resource that you used to run the installation.

            2. Scroll down the blade and find App Service logs in the Monitoring section

            3. Turn Application Logging (Filesystem) On

            4. Change Level to Verbose

            5. Save


            App Service Logs




            1. Select Log stream from Monitoring section

            2. Select Application logs


            Log stream



            At this point, you will need to rerun the installation to capture new logs. Via Log stream you can view the current output of logs. If you wish to view historical logs (if you've previously configured this)- then you'll need to use Kudu.



            Kudu




            1. From the App Service blade you used previously, select Advanced Tools from the Development Tools section.


            Kudu access




            1. Then press Go -> to open Kudu in a separate window

            2. From the new window select Debug console > PowerShell


            Kudu PowerShell




            1. Next, drill down into Log Files/Application to view historically captured log files


            By selecting Verbose previously, the log files will contain all messages. At this point, it's a matter of searching the log file for messages related to your installation.



            Application logs



            temp__upgrade Location



            From Kudu, you can also drill down into that particular folder:



            sitewwwroottemp



            Though I cannot confirm that the expected files will appear there as the instance I'm referencing does not have them (though it has many other expected temp files).






            share|improve this answer
























            • The first approach works well for watching logs, but unfortunately the update installation wizard logs don't show up there. Also unfortunately, Kudu's consoles do not show all the files because they open in a sandboxed version. sad trombone

              – Dan Sinclair
              5 hours ago
















            3














            There are likely additional places and methods for retrieving this data, but the following is typically what I resort to:



            Note: I have not tested SPECIFICALLY for UpdateInstallationWizard logs




            1. In Azure Portal, select the App Service resource that you used to run the installation.

            2. Scroll down the blade and find App Service logs in the Monitoring section

            3. Turn Application Logging (Filesystem) On

            4. Change Level to Verbose

            5. Save


            App Service Logs




            1. Select Log stream from Monitoring section

            2. Select Application logs


            Log stream



            At this point, you will need to rerun the installation to capture new logs. Via Log stream you can view the current output of logs. If you wish to view historical logs (if you've previously configured this)- then you'll need to use Kudu.



            Kudu




            1. From the App Service blade you used previously, select Advanced Tools from the Development Tools section.


            Kudu access




            1. Then press Go -> to open Kudu in a separate window

            2. From the new window select Debug console > PowerShell


            Kudu PowerShell




            1. Next, drill down into Log Files/Application to view historically captured log files


            By selecting Verbose previously, the log files will contain all messages. At this point, it's a matter of searching the log file for messages related to your installation.



            Application logs



            temp__upgrade Location



            From Kudu, you can also drill down into that particular folder:



            sitewwwroottemp



            Though I cannot confirm that the expected files will appear there as the instance I'm referencing does not have them (though it has many other expected temp files).






            share|improve this answer
























            • The first approach works well for watching logs, but unfortunately the update installation wizard logs don't show up there. Also unfortunately, Kudu's consoles do not show all the files because they open in a sandboxed version. sad trombone

              – Dan Sinclair
              5 hours ago














            3












            3








            3







            There are likely additional places and methods for retrieving this data, but the following is typically what I resort to:



            Note: I have not tested SPECIFICALLY for UpdateInstallationWizard logs




            1. In Azure Portal, select the App Service resource that you used to run the installation.

            2. Scroll down the blade and find App Service logs in the Monitoring section

            3. Turn Application Logging (Filesystem) On

            4. Change Level to Verbose

            5. Save


            App Service Logs




            1. Select Log stream from Monitoring section

            2. Select Application logs


            Log stream



            At this point, you will need to rerun the installation to capture new logs. Via Log stream you can view the current output of logs. If you wish to view historical logs (if you've previously configured this)- then you'll need to use Kudu.



            Kudu




            1. From the App Service blade you used previously, select Advanced Tools from the Development Tools section.


            Kudu access




            1. Then press Go -> to open Kudu in a separate window

            2. From the new window select Debug console > PowerShell


            Kudu PowerShell




            1. Next, drill down into Log Files/Application to view historically captured log files


            By selecting Verbose previously, the log files will contain all messages. At this point, it's a matter of searching the log file for messages related to your installation.



            Application logs



            temp__upgrade Location



            From Kudu, you can also drill down into that particular folder:



            sitewwwroottemp



            Though I cannot confirm that the expected files will appear there as the instance I'm referencing does not have them (though it has many other expected temp files).






            share|improve this answer













            There are likely additional places and methods for retrieving this data, but the following is typically what I resort to:



            Note: I have not tested SPECIFICALLY for UpdateInstallationWizard logs




            1. In Azure Portal, select the App Service resource that you used to run the installation.

            2. Scroll down the blade and find App Service logs in the Monitoring section

            3. Turn Application Logging (Filesystem) On

            4. Change Level to Verbose

            5. Save


            App Service Logs




            1. Select Log stream from Monitoring section

            2. Select Application logs


            Log stream



            At this point, you will need to rerun the installation to capture new logs. Via Log stream you can view the current output of logs. If you wish to view historical logs (if you've previously configured this)- then you'll need to use Kudu.



            Kudu




            1. From the App Service blade you used previously, select Advanced Tools from the Development Tools section.


            Kudu access




            1. Then press Go -> to open Kudu in a separate window

            2. From the new window select Debug console > PowerShell


            Kudu PowerShell




            1. Next, drill down into Log Files/Application to view historically captured log files


            By selecting Verbose previously, the log files will contain all messages. At this point, it's a matter of searching the log file for messages related to your installation.



            Application logs



            temp__upgrade Location



            From Kudu, you can also drill down into that particular folder:



            sitewwwroottemp



            Though I cannot confirm that the expected files will appear there as the instance I'm referencing does not have them (though it has many other expected temp files).







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered 8 hours ago









            jrapjrap

            2,8721631




            2,8721631













            • The first approach works well for watching logs, but unfortunately the update installation wizard logs don't show up there. Also unfortunately, Kudu's consoles do not show all the files because they open in a sandboxed version. sad trombone

              – Dan Sinclair
              5 hours ago



















            • The first approach works well for watching logs, but unfortunately the update installation wizard logs don't show up there. Also unfortunately, Kudu's consoles do not show all the files because they open in a sandboxed version. sad trombone

              – Dan Sinclair
              5 hours ago

















            The first approach works well for watching logs, but unfortunately the update installation wizard logs don't show up there. Also unfortunately, Kudu's consoles do not show all the files because they open in a sandboxed version. sad trombone

            – Dan Sinclair
            5 hours ago





            The first approach works well for watching logs, but unfortunately the update installation wizard logs don't show up there. Also unfortunately, Kudu's consoles do not show all the files because they open in a sandboxed version. sad trombone

            – Dan Sinclair
            5 hours ago











            2














            The files are stored in the temp folder, which is defined by a variable in the configs:



            <sc.variable name="tempFolder" value="d:localtemp"/>


            Unfortunately, browsing this folder with Kudu does not show the files in question because Kudu provisions a sandbox environment which does not contain the files.



            Using Vlad's answer on a similar topic as a starting point, I was able to write up a simple temp folder browser which generates links to the files through the Sitecore.TempRequestHandler (Sitecore.Resources.TempRequestHandler, Sitecore.Kernel).



            Throw this in an .aspx page in your /sitecore/admin folder to use it.



            <html xmlns="http://www.w3.org/1999/xhtml">
            <head runat="server">
            <title>Sitecore Temp Folder Browser</title>
            <link rel="Stylesheet" type="text/css" href="/sitecore/shell/themes/standard/default/WebFramework.css" />
            <link rel="Stylesheet" type="text/css" href="./default.css" />
            </head>
            <body>
            <script runat="server">
            private const string TEMP_FOLDER_PATH = @"d:localtemp";
            private const int MAX_FILE_COUNT = 10;

            private void Scan(string path) {
            string maxFileCountString = GetQueryString("maxFileCount");
            int maxFileCount = MAX_FILE_COUNT;
            if (!string.IsNullOrEmpty(maxFileCountString) && !int.TryParse(maxFileCountString, out maxFileCount))
            {
            Response.Write("<li><span style='color:red'>Invalid value for the <i>maxFileCount</i> parameter. It must be an integer.</span></li>");
            }
            else
            {
            if (!System.IO.Directory.Exists(path))
            {
            Response.Write("<li><span style='color:red'>Invalid path. The path does not exist: " + path + "</span></li>");
            }
            else
            {
            string ignoredFolderNamesString = GetQueryString("ignoreFolderNames");
            string[] ignoredFolderNames;
            if (!string.IsNullOrEmpty(ignoredFolderNamesString))
            {
            ignoredFolderNames = ignoredFolderNamesString.Split(',');
            }
            else
            {
            ignoredFolderNames = new string[0];
            }

            if (path.EndsWith("\") || path.EndsWith("/"))
            {
            path = path.Substring(0, path.Length - 1);
            }

            ScanRecursive(path, maxFileCount, ignoredFolderNames);
            }
            }
            }

            private void ScanRecursive(string path, int maxFileCount, string[] ignoredFolderNames)
            {
            Response.Write("<li>");
            Response.Write("<a href='?maxFileCount=" + maxFileCount + "&ignoreFolderNames=" + string.Join(",", ignoredFolderNames) + "&subPath=" + path.Replace(TEMP_FOLDER_PATH, string.Empty) + "'>");
            Response.Write(System.IO.Path.GetFileName(path));
            Response.Write("</a>");
            Response.Write("</li>");

            if (!ignoredFolderNames.Any(s => s.Equals(System.IO.Path.GetFileName(path), StringComparison.OrdinalIgnoreCase))) {
            Response.Write("<ul>");
            foreach (var directory in System.IO.Directory.GetDirectories(path)) {
            ScanRecursive(directory, maxFileCount, ignoredFolderNames);
            }
            int count = 0;
            foreach (var file in System.IO.Directory.GetFiles(path)) {
            if (++count > maxFileCount) {
            Response.Write("<li>...</li>");
            break;
            }
            Response.Write("<li><i>");
            Response.Write("<a href='" + file.Replace(TEMP_FOLDER_PATH, "/-/temp/") + ".aspx' target='_blank'>");
            Response.Write(System.IO.Path.GetFileName(file));
            Response.Write("</a>");
            Response.Write("</i></li>");
            }
            Response.Write("</ul>");
            }
            else
            {
            Response.Write("<ul><li><i>(ignored due to query string)</i></li></ul>");
            }
            }

            private string GetQueryString(string key) {
            return Request.QueryString[key];
            }
            </script>
            <form id="Form1" runat="server" class="wf-container">
            <div class="wf-content">
            <h1>Sitecore Temp Folder Browser</h1>
            <% string fullPath = TEMP_FOLDER_PATH + GetQueryString("subPath"); %>
            <h4><%= fullPath %></h4>
            <ul>
            <%
            Scan(fullPath);
            %>
            </ul>
            </div>
            </form>
            </body>
            </html>





            share|improve this answer






























              2














              The files are stored in the temp folder, which is defined by a variable in the configs:



              <sc.variable name="tempFolder" value="d:localtemp"/>


              Unfortunately, browsing this folder with Kudu does not show the files in question because Kudu provisions a sandbox environment which does not contain the files.



              Using Vlad's answer on a similar topic as a starting point, I was able to write up a simple temp folder browser which generates links to the files through the Sitecore.TempRequestHandler (Sitecore.Resources.TempRequestHandler, Sitecore.Kernel).



              Throw this in an .aspx page in your /sitecore/admin folder to use it.



              <html xmlns="http://www.w3.org/1999/xhtml">
              <head runat="server">
              <title>Sitecore Temp Folder Browser</title>
              <link rel="Stylesheet" type="text/css" href="/sitecore/shell/themes/standard/default/WebFramework.css" />
              <link rel="Stylesheet" type="text/css" href="./default.css" />
              </head>
              <body>
              <script runat="server">
              private const string TEMP_FOLDER_PATH = @"d:localtemp";
              private const int MAX_FILE_COUNT = 10;

              private void Scan(string path) {
              string maxFileCountString = GetQueryString("maxFileCount");
              int maxFileCount = MAX_FILE_COUNT;
              if (!string.IsNullOrEmpty(maxFileCountString) && !int.TryParse(maxFileCountString, out maxFileCount))
              {
              Response.Write("<li><span style='color:red'>Invalid value for the <i>maxFileCount</i> parameter. It must be an integer.</span></li>");
              }
              else
              {
              if (!System.IO.Directory.Exists(path))
              {
              Response.Write("<li><span style='color:red'>Invalid path. The path does not exist: " + path + "</span></li>");
              }
              else
              {
              string ignoredFolderNamesString = GetQueryString("ignoreFolderNames");
              string[] ignoredFolderNames;
              if (!string.IsNullOrEmpty(ignoredFolderNamesString))
              {
              ignoredFolderNames = ignoredFolderNamesString.Split(',');
              }
              else
              {
              ignoredFolderNames = new string[0];
              }

              if (path.EndsWith("\") || path.EndsWith("/"))
              {
              path = path.Substring(0, path.Length - 1);
              }

              ScanRecursive(path, maxFileCount, ignoredFolderNames);
              }
              }
              }

              private void ScanRecursive(string path, int maxFileCount, string[] ignoredFolderNames)
              {
              Response.Write("<li>");
              Response.Write("<a href='?maxFileCount=" + maxFileCount + "&ignoreFolderNames=" + string.Join(",", ignoredFolderNames) + "&subPath=" + path.Replace(TEMP_FOLDER_PATH, string.Empty) + "'>");
              Response.Write(System.IO.Path.GetFileName(path));
              Response.Write("</a>");
              Response.Write("</li>");

              if (!ignoredFolderNames.Any(s => s.Equals(System.IO.Path.GetFileName(path), StringComparison.OrdinalIgnoreCase))) {
              Response.Write("<ul>");
              foreach (var directory in System.IO.Directory.GetDirectories(path)) {
              ScanRecursive(directory, maxFileCount, ignoredFolderNames);
              }
              int count = 0;
              foreach (var file in System.IO.Directory.GetFiles(path)) {
              if (++count > maxFileCount) {
              Response.Write("<li>...</li>");
              break;
              }
              Response.Write("<li><i>");
              Response.Write("<a href='" + file.Replace(TEMP_FOLDER_PATH, "/-/temp/") + ".aspx' target='_blank'>");
              Response.Write(System.IO.Path.GetFileName(file));
              Response.Write("</a>");
              Response.Write("</i></li>");
              }
              Response.Write("</ul>");
              }
              else
              {
              Response.Write("<ul><li><i>(ignored due to query string)</i></li></ul>");
              }
              }

              private string GetQueryString(string key) {
              return Request.QueryString[key];
              }
              </script>
              <form id="Form1" runat="server" class="wf-container">
              <div class="wf-content">
              <h1>Sitecore Temp Folder Browser</h1>
              <% string fullPath = TEMP_FOLDER_PATH + GetQueryString("subPath"); %>
              <h4><%= fullPath %></h4>
              <ul>
              <%
              Scan(fullPath);
              %>
              </ul>
              </div>
              </form>
              </body>
              </html>





              share|improve this answer




























                2












                2








                2







                The files are stored in the temp folder, which is defined by a variable in the configs:



                <sc.variable name="tempFolder" value="d:localtemp"/>


                Unfortunately, browsing this folder with Kudu does not show the files in question because Kudu provisions a sandbox environment which does not contain the files.



                Using Vlad's answer on a similar topic as a starting point, I was able to write up a simple temp folder browser which generates links to the files through the Sitecore.TempRequestHandler (Sitecore.Resources.TempRequestHandler, Sitecore.Kernel).



                Throw this in an .aspx page in your /sitecore/admin folder to use it.



                <html xmlns="http://www.w3.org/1999/xhtml">
                <head runat="server">
                <title>Sitecore Temp Folder Browser</title>
                <link rel="Stylesheet" type="text/css" href="/sitecore/shell/themes/standard/default/WebFramework.css" />
                <link rel="Stylesheet" type="text/css" href="./default.css" />
                </head>
                <body>
                <script runat="server">
                private const string TEMP_FOLDER_PATH = @"d:localtemp";
                private const int MAX_FILE_COUNT = 10;

                private void Scan(string path) {
                string maxFileCountString = GetQueryString("maxFileCount");
                int maxFileCount = MAX_FILE_COUNT;
                if (!string.IsNullOrEmpty(maxFileCountString) && !int.TryParse(maxFileCountString, out maxFileCount))
                {
                Response.Write("<li><span style='color:red'>Invalid value for the <i>maxFileCount</i> parameter. It must be an integer.</span></li>");
                }
                else
                {
                if (!System.IO.Directory.Exists(path))
                {
                Response.Write("<li><span style='color:red'>Invalid path. The path does not exist: " + path + "</span></li>");
                }
                else
                {
                string ignoredFolderNamesString = GetQueryString("ignoreFolderNames");
                string[] ignoredFolderNames;
                if (!string.IsNullOrEmpty(ignoredFolderNamesString))
                {
                ignoredFolderNames = ignoredFolderNamesString.Split(',');
                }
                else
                {
                ignoredFolderNames = new string[0];
                }

                if (path.EndsWith("\") || path.EndsWith("/"))
                {
                path = path.Substring(0, path.Length - 1);
                }

                ScanRecursive(path, maxFileCount, ignoredFolderNames);
                }
                }
                }

                private void ScanRecursive(string path, int maxFileCount, string[] ignoredFolderNames)
                {
                Response.Write("<li>");
                Response.Write("<a href='?maxFileCount=" + maxFileCount + "&ignoreFolderNames=" + string.Join(",", ignoredFolderNames) + "&subPath=" + path.Replace(TEMP_FOLDER_PATH, string.Empty) + "'>");
                Response.Write(System.IO.Path.GetFileName(path));
                Response.Write("</a>");
                Response.Write("</li>");

                if (!ignoredFolderNames.Any(s => s.Equals(System.IO.Path.GetFileName(path), StringComparison.OrdinalIgnoreCase))) {
                Response.Write("<ul>");
                foreach (var directory in System.IO.Directory.GetDirectories(path)) {
                ScanRecursive(directory, maxFileCount, ignoredFolderNames);
                }
                int count = 0;
                foreach (var file in System.IO.Directory.GetFiles(path)) {
                if (++count > maxFileCount) {
                Response.Write("<li>...</li>");
                break;
                }
                Response.Write("<li><i>");
                Response.Write("<a href='" + file.Replace(TEMP_FOLDER_PATH, "/-/temp/") + ".aspx' target='_blank'>");
                Response.Write(System.IO.Path.GetFileName(file));
                Response.Write("</a>");
                Response.Write("</i></li>");
                }
                Response.Write("</ul>");
                }
                else
                {
                Response.Write("<ul><li><i>(ignored due to query string)</i></li></ul>");
                }
                }

                private string GetQueryString(string key) {
                return Request.QueryString[key];
                }
                </script>
                <form id="Form1" runat="server" class="wf-container">
                <div class="wf-content">
                <h1>Sitecore Temp Folder Browser</h1>
                <% string fullPath = TEMP_FOLDER_PATH + GetQueryString("subPath"); %>
                <h4><%= fullPath %></h4>
                <ul>
                <%
                Scan(fullPath);
                %>
                </ul>
                </div>
                </form>
                </body>
                </html>





                share|improve this answer















                The files are stored in the temp folder, which is defined by a variable in the configs:



                <sc.variable name="tempFolder" value="d:localtemp"/>


                Unfortunately, browsing this folder with Kudu does not show the files in question because Kudu provisions a sandbox environment which does not contain the files.



                Using Vlad's answer on a similar topic as a starting point, I was able to write up a simple temp folder browser which generates links to the files through the Sitecore.TempRequestHandler (Sitecore.Resources.TempRequestHandler, Sitecore.Kernel).



                Throw this in an .aspx page in your /sitecore/admin folder to use it.



                <html xmlns="http://www.w3.org/1999/xhtml">
                <head runat="server">
                <title>Sitecore Temp Folder Browser</title>
                <link rel="Stylesheet" type="text/css" href="/sitecore/shell/themes/standard/default/WebFramework.css" />
                <link rel="Stylesheet" type="text/css" href="./default.css" />
                </head>
                <body>
                <script runat="server">
                private const string TEMP_FOLDER_PATH = @"d:localtemp";
                private const int MAX_FILE_COUNT = 10;

                private void Scan(string path) {
                string maxFileCountString = GetQueryString("maxFileCount");
                int maxFileCount = MAX_FILE_COUNT;
                if (!string.IsNullOrEmpty(maxFileCountString) && !int.TryParse(maxFileCountString, out maxFileCount))
                {
                Response.Write("<li><span style='color:red'>Invalid value for the <i>maxFileCount</i> parameter. It must be an integer.</span></li>");
                }
                else
                {
                if (!System.IO.Directory.Exists(path))
                {
                Response.Write("<li><span style='color:red'>Invalid path. The path does not exist: " + path + "</span></li>");
                }
                else
                {
                string ignoredFolderNamesString = GetQueryString("ignoreFolderNames");
                string[] ignoredFolderNames;
                if (!string.IsNullOrEmpty(ignoredFolderNamesString))
                {
                ignoredFolderNames = ignoredFolderNamesString.Split(',');
                }
                else
                {
                ignoredFolderNames = new string[0];
                }

                if (path.EndsWith("\") || path.EndsWith("/"))
                {
                path = path.Substring(0, path.Length - 1);
                }

                ScanRecursive(path, maxFileCount, ignoredFolderNames);
                }
                }
                }

                private void ScanRecursive(string path, int maxFileCount, string[] ignoredFolderNames)
                {
                Response.Write("<li>");
                Response.Write("<a href='?maxFileCount=" + maxFileCount + "&ignoreFolderNames=" + string.Join(",", ignoredFolderNames) + "&subPath=" + path.Replace(TEMP_FOLDER_PATH, string.Empty) + "'>");
                Response.Write(System.IO.Path.GetFileName(path));
                Response.Write("</a>");
                Response.Write("</li>");

                if (!ignoredFolderNames.Any(s => s.Equals(System.IO.Path.GetFileName(path), StringComparison.OrdinalIgnoreCase))) {
                Response.Write("<ul>");
                foreach (var directory in System.IO.Directory.GetDirectories(path)) {
                ScanRecursive(directory, maxFileCount, ignoredFolderNames);
                }
                int count = 0;
                foreach (var file in System.IO.Directory.GetFiles(path)) {
                if (++count > maxFileCount) {
                Response.Write("<li>...</li>");
                break;
                }
                Response.Write("<li><i>");
                Response.Write("<a href='" + file.Replace(TEMP_FOLDER_PATH, "/-/temp/") + ".aspx' target='_blank'>");
                Response.Write(System.IO.Path.GetFileName(file));
                Response.Write("</a>");
                Response.Write("</i></li>");
                }
                Response.Write("</ul>");
                }
                else
                {
                Response.Write("<ul><li><i>(ignored due to query string)</i></li></ul>");
                }
                }

                private string GetQueryString(string key) {
                return Request.QueryString[key];
                }
                </script>
                <form id="Form1" runat="server" class="wf-container">
                <div class="wf-content">
                <h1>Sitecore Temp Folder Browser</h1>
                <% string fullPath = TEMP_FOLDER_PATH + GetQueryString("subPath"); %>
                <h4><%= fullPath %></h4>
                <ul>
                <%
                Scan(fullPath);
                %>
                </ul>
                </div>
                </form>
                </body>
                </html>






                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited 1 hour ago

























                answered 5 hours ago









                Dan SinclairDan Sinclair

                2,6782729




                2,6782729






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Sitecore Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsitecore.stackexchange.com%2fquestions%2f19061%2fwhere-do-the-updateinstallationwizard-aspx-logs-get-saved-in-azure-paas%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Taj Mahal Inhaltsverzeichnis Aufbau | Geschichte | 350-Jahr-Feier | Heutige Bedeutung | Siehe auch |...

                    Baia Sprie Cuprins Etimologie | Istorie | Demografie | Politică și administrație | Arii naturale...

                    Ciclooctatetraenă Vezi și | Bibliografie | Meniu de navigare637866text4148569-500570979m