As a user utilizing the Report Server product, I need to use a single instance of it to serve two or more completely separated divisions/clients so that they do not have access to each other's assets, so that I do not have to make two different deployments of the server and support them. See https://en.wikipedia.org/wiki/Multitenancy
Some of my scheduled tasks generate errors in the ServiceAgent log like:
Telerik.ReportServer.ServiceAgent.exe Error: 0 : Sending an email message failed: System.Net.Mail.SmtpException: Exceeded storage allocation. The server response was: 4.3.1 Message size exceeds fixed maximum message size at System.Net.Mail.DataStopCommand.CheckResponse(SmtpStatusCode statusCode, String serverResponse) ...
Telerik.ReportServer.ServiceAgent.exe Error: 0 : Sending an email message failed: System.Net.Mail.SmtpException: Failure sending mail. ---> System.IO.IOException: Unable to write data to the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host at System.Net.Sockets.NetworkStream.Write(Byte buffer, Int32 offset, Int32 size) ...
In these cases, the report document seems to be generated correctly, however, it is too large to be attached to an email and there aren't any emails sent to the users.
It would be helpful to have at least notifications sent to the admin that the task was executed, but the emails were not sent due to particular reasons.
Currently the Report Server appears to keep the execution history of scheduled report tasks indefinitely. The task execution history is a very useful feature but there appears to be no way to limit the history to a certain amount of time. For our use case it is unlikely that we will need to go further back then 1 or two months in the history and as we get months an even years of history (which includes the execution and related documents) the time needed to backup and restore the Report Server increases. We only have about 30 scheduled reports that run each day but over a year that is 10,000+ executions that are stored and anything over a month or so old has little value to us. I am not sure if these also have an impact on the overall performance of the Report Server or at least the Scheduler portion of the UI but that would be another reason to limit the retention.
Currently the only method to delete the executions is to either (a) do it manually via the UI (screenshot below) or (b) to write an application that deletes executions outside our retention window using the API to query and then delete them. Method (a) is too time consuming for a person to do and (b) will require writing the application but then also monitoring it's status and keeping up with any changes in the API over time.
I would propose adding some method of allowing users to set a "retention period" for scheduled task executions.
Implementing this would allow for much quicker upgrades, backups, and restores of the Report Server.
We are using Azure Redis Cache for the Report Server storage. Azure Redis stops the support for TLS 1.0 and 1.1 as stated in Remove TLS 1.0 and 1.1 from use with Azure Cache for Redis.
If I set Azure Redis to allow TLS 1.0 everything works fine.
If I switch the minimum TLS version in Azure to 1.2 (or 1.1 for that matter) I start to get the error:
No connection is available to service this operation: GET TRS\1\SV at StackExchange.Redis.ConnectionMultiplexer.ExecuteSyncImpl[T](Message message, ResultProcessor`1 processor, ServerEndPoint server) at StackExchange.Redis.RedisBase.ExecuteSync[T](Message message, ResultProcessor`1 processor, ServerEndPoint server) at StackExchange.Redis.RedisDatabase.StringGet(RedisKey key, CommandFlags flags) at Telerik.Reporting.Cache.StackExchangeRedis.RedisStorage.GetBytes(String key) at Telerik.Reporting.Services.Engine.PersistableObject.GetInt(String key) at Telerik.ReportServer.Engine.StorageUpgrader.UpgradeStorageVersion() at Telerik.ReportServer.Web.Models.ReportServerWebHost..ctor(IStorage storage) at Telerik.ReportServer.Web.WebApiConfig.ConfigureDependencyResolver() at Telerik.ReportServer.Web.WebApiConfig.Register(HttpConfiguration config) at System.Web.Http.GlobalConfiguration.Configure(Action`1 configurationCallback) at Telerik.ReportServer.Web.WebApiApplication.Application_Start()
The articles I can find all state that we should add "sslprotocols=tls12" in addition to "ssl=true" in the connection string to support TLS 1.2. When I do this I get the error "Keyword 'sslProtocols' is not supported".
This won't let me use Azure Redis Cache.
I suspect the issue is due to the deprecated package that you use for the Redis database connection.
For that reason, I would like it to be updated to the new one so that I may continue to use Azure Redis.
We use the Kendo MVC controls in our website that is hosted on Microsoft Azure. We would like to do reporting but cannot with the Telerik reporting functionality - as far as I am aware. Cloud based websites are increasing in number....
Currently, the Report Server is installed with binding only to HTTP-type sites. This may break a Report Server site bound to an HTTPS site after upgrading to a new version. It is necessary to add the binding to HTTPS manually after each upgrade.
It would be great if there is an option for binding to HTTPS with the installation and if all the bindings can be preserved after upgrading.
When I do a sort or filtering in the report section on the server and I edit a report (f.i. add revision) the sorting and filtering is gone.
It's much nicer to keep the sorting and or filtering
The Whitelabeling option are extremely limited.
I would like to see more customization available like removing the sidebar completely, or based on user settings / roles - as well as the top title bar (where logo is).
Customizable themes would go a long way.
Being able to integrate the existing report server pages into our own website would cut down on a lot of work.
Provide the option to save custom report settings in the storage and enable specific rendering device settings based on custom settings.
Example use case:
- on the Report Server - Report view, the user should have a button for report settings;
- this button will open a custom dialog that contains various inputs;
- clicking Save on the custom dialog, the save operation will be handled by the Report Server implementor and the implementor should be able to get the user input and save various settings in the Report Server storage for the selected report;
- on rendering the report through the Preview, Scheduled Task, or Data Alert, the report server engine should invoke a custom event/code that can read the storage report settings and based on them provide rendering device settings to use during the report rendering.
User functions should be visible in Edit Expression editor when editing Report Server's report in Standalone designer.
Considering that the server's configuration was modified to load the custom assembly with user functions as per How to configure Telerik Report Server to use reports with custom functions, there should be no other configurations required.