Programmatically add log information in all renderings (controller, view) HTMLSitecore MVC - Controller...

Weird resistor with dots around it

(A room / an office) where an artist works

Is it possible to grow new organs through exposure to radioactivity?

Beginner in need of a simple explanation of the difference between order of evaluation and precedence/associativity

How was the murder committed?

How can I communicate my issues with a potential date's pushy behavior?

How to remove ambiguity: "... lives in the city of H, the capital of the province of NS, WHERE the unemployment rate is ..."?

How did Arecibo detect methane lakes on Titan, and image Saturn's rings?

If "more guns less crime", how do gun advocates explain that the EU has less crime than the US?

Shifting tenses in the middle of narration

Chunk + Enumerate a list of digits

Why does Japan use the same type of AC power outlet as the US?

Are differences between uniformly distributed numbers uniformly distributed?

Markov-chain sentence generator in Python

Are there really no countries that protect Freedom of Speech as the United States does?

Will using a resistor in series with a LED to control its voltage increase the total energy expenditure?

"Mouth-breathing" as slang for stupidity

Causal Diagrams using Wolfram?

Modeling the uncertainty of the input parameters

If you know the location of an invisible creature, can you attack it?

Identifying My Main Water Shutoff Valve / Setup

Why is Python 2.7 still the default Python version in Ubuntu?

Can lodestones be used to magnetize crude iron weapons?

How to Check all AD users for "blank" password?



Programmatically add log information in all renderings (controller, view) HTML


Sitecore MVC - Controller Renderings - View Model for Custom ItemSafely replacing all references to an Rendering with anotherHow to trigger custom code when rendering is removed?How do I set up my Sitecore MVC Post form and receive a confirmation pageHow do you programmatically get the HTML from a Sitecore item, including all its renderings?Image not rendering in SXA PageList variantI need to reorder renderings in Presentation Details on all pagesIs creating a Model under /sitecore/layout/Models a best pratice?How to read Data source field value in view rendering






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}







2















Is there an option to write some logging information, like rendering name and data-source location, in every view programmatically, without go and modified in all views?










share|improve this question



























  • What do you mean by "go and modified"?

    – Peter Mortensen
    19 hours ago











  • @PeterMortensen manually edit all the cshtml files.

    – Andi AR
    9 hours ago


















2















Is there an option to write some logging information, like rendering name and data-source location, in every view programmatically, without go and modified in all views?










share|improve this question



























  • What do you mean by "go and modified"?

    – Peter Mortensen
    19 hours ago











  • @PeterMortensen manually edit all the cshtml files.

    – Andi AR
    9 hours ago














2












2








2








Is there an option to write some logging information, like rendering name and data-source location, in every view programmatically, without go and modified in all views?










share|improve this question
















Is there an option to write some logging information, like rendering name and data-source location, in every view programmatically, without go and modified in all views?







presentation mvc pipelines






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 9 hours ago









Peter Mortensen

1172 bronze badges




1172 bronze badges










asked yesterday









Andi ARAndi AR

1687 bronze badges




1687 bronze badges
















  • What do you mean by "go and modified"?

    – Peter Mortensen
    19 hours ago











  • @PeterMortensen manually edit all the cshtml files.

    – Andi AR
    9 hours ago



















  • What do you mean by "go and modified"?

    – Peter Mortensen
    19 hours ago











  • @PeterMortensen manually edit all the cshtml files.

    – Andi AR
    9 hours ago

















What do you mean by "go and modified"?

– Peter Mortensen
19 hours ago





What do you mean by "go and modified"?

– Peter Mortensen
19 hours ago













@PeterMortensen manually edit all the cshtml files.

– Andi AR
9 hours ago





@PeterMortensen manually edit all the cshtml files.

– Andi AR
9 hours ago










1 Answer
1






active

oldest

votes


















8














Yes, you can do it by the following way.



Configuration:



<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<pipelines>
<mvc.renderRendering>
<processor type="YourAssembly.LogExecuteRenderer, YourAssembly" patch:instead="processor[@type='Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer, Sitecore.Mvc']" />
</mvc.renderRendering>
</pipelines>
</sitecore>
</configuration>


Code to render at the beginning of the rendering:



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return base.Render(renderer, writer, args);
}
}


Code to render at the end of the rendering: (thanks for the comment @MarekMusielak)



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
var baseResult = base.Render(renderer, writer, args);

writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return baseResult;
}
}





share|improve this answer























  • 2





    You open a <div> tag in your snippet and then close </code> tag. You may want to change this ;) You may also want to write to writer where the component ends: save result of base.Render to a variable, write component end info to writer and return the result. Anyway, good answer.

    – Marek Musielak
    yesterday






  • 1





    @MarekMusielak that's right, thx! :) I include the second option as well in my answer if you don't mind.

    – Tamás Tárnok
    yesterday














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%2f20470%2fprogrammatically-add-log-information-in-all-renderings-controller-view-html%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









8














Yes, you can do it by the following way.



Configuration:



<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<pipelines>
<mvc.renderRendering>
<processor type="YourAssembly.LogExecuteRenderer, YourAssembly" patch:instead="processor[@type='Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer, Sitecore.Mvc']" />
</mvc.renderRendering>
</pipelines>
</sitecore>
</configuration>


Code to render at the beginning of the rendering:



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return base.Render(renderer, writer, args);
}
}


Code to render at the end of the rendering: (thanks for the comment @MarekMusielak)



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
var baseResult = base.Render(renderer, writer, args);

writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return baseResult;
}
}





share|improve this answer























  • 2





    You open a <div> tag in your snippet and then close </code> tag. You may want to change this ;) You may also want to write to writer where the component ends: save result of base.Render to a variable, write component end info to writer and return the result. Anyway, good answer.

    – Marek Musielak
    yesterday






  • 1





    @MarekMusielak that's right, thx! :) I include the second option as well in my answer if you don't mind.

    – Tamás Tárnok
    yesterday
















8














Yes, you can do it by the following way.



Configuration:



<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<pipelines>
<mvc.renderRendering>
<processor type="YourAssembly.LogExecuteRenderer, YourAssembly" patch:instead="processor[@type='Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer, Sitecore.Mvc']" />
</mvc.renderRendering>
</pipelines>
</sitecore>
</configuration>


Code to render at the beginning of the rendering:



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return base.Render(renderer, writer, args);
}
}


Code to render at the end of the rendering: (thanks for the comment @MarekMusielak)



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
var baseResult = base.Render(renderer, writer, args);

writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return baseResult;
}
}





share|improve this answer























  • 2





    You open a <div> tag in your snippet and then close </code> tag. You may want to change this ;) You may also want to write to writer where the component ends: save result of base.Render to a variable, write component end info to writer and return the result. Anyway, good answer.

    – Marek Musielak
    yesterday






  • 1





    @MarekMusielak that's right, thx! :) I include the second option as well in my answer if you don't mind.

    – Tamás Tárnok
    yesterday














8












8








8







Yes, you can do it by the following way.



Configuration:



<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<pipelines>
<mvc.renderRendering>
<processor type="YourAssembly.LogExecuteRenderer, YourAssembly" patch:instead="processor[@type='Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer, Sitecore.Mvc']" />
</mvc.renderRendering>
</pipelines>
</sitecore>
</configuration>


Code to render at the beginning of the rendering:



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return base.Render(renderer, writer, args);
}
}


Code to render at the end of the rendering: (thanks for the comment @MarekMusielak)



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
var baseResult = base.Render(renderer, writer, args);

writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return baseResult;
}
}





share|improve this answer















Yes, you can do it by the following way.



Configuration:



<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<pipelines>
<mvc.renderRendering>
<processor type="YourAssembly.LogExecuteRenderer, YourAssembly" patch:instead="processor[@type='Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer, Sitecore.Mvc']" />
</mvc.renderRendering>
</pipelines>
</sitecore>
</configuration>


Code to render at the beginning of the rendering:



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return base.Render(renderer, writer, args);
}
}


Code to render at the end of the rendering: (thanks for the comment @MarekMusielak)



public class LogExecuteRenderer : ExecuteRenderer
{
protected override bool Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
{
var baseResult = base.Render(renderer, writer, args);

writer.WriteLine($"<div renderingPath="{args.Rendering.RenderingItemPath}" datasource="{args.Rendering.DataSource}"></div>");

return baseResult;
}
}






share|improve this answer














share|improve this answer



share|improve this answer








edited yesterday

























answered yesterday









Tamás TárnokTamás Tárnok

2,9841 gold badge8 silver badges25 bronze badges




2,9841 gold badge8 silver badges25 bronze badges











  • 2





    You open a <div> tag in your snippet and then close </code> tag. You may want to change this ;) You may also want to write to writer where the component ends: save result of base.Render to a variable, write component end info to writer and return the result. Anyway, good answer.

    – Marek Musielak
    yesterday






  • 1





    @MarekMusielak that's right, thx! :) I include the second option as well in my answer if you don't mind.

    – Tamás Tárnok
    yesterday














  • 2





    You open a <div> tag in your snippet and then close </code> tag. You may want to change this ;) You may also want to write to writer where the component ends: save result of base.Render to a variable, write component end info to writer and return the result. Anyway, good answer.

    – Marek Musielak
    yesterday






  • 1





    @MarekMusielak that's right, thx! :) I include the second option as well in my answer if you don't mind.

    – Tamás Tárnok
    yesterday








2




2





You open a <div> tag in your snippet and then close </code> tag. You may want to change this ;) You may also want to write to writer where the component ends: save result of base.Render to a variable, write component end info to writer and return the result. Anyway, good answer.

– Marek Musielak
yesterday





You open a <div> tag in your snippet and then close </code> tag. You may want to change this ;) You may also want to write to writer where the component ends: save result of base.Render to a variable, write component end info to writer and return the result. Anyway, good answer.

– Marek Musielak
yesterday




1




1





@MarekMusielak that's right, thx! :) I include the second option as well in my answer if you don't mind.

– Tamás Tárnok
yesterday





@MarekMusielak that's right, thx! :) I include the second option as well in my answer if you don't mind.

– Tamás Tárnok
yesterday


















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%2f20470%2fprogrammatically-add-log-information-in-all-renderings-controller-view-html%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...

Nicolae Petrescu-Găină Cuprins Biografie | Opera | In memoriam | Varia | Controverse, incertitudini...