r

Complete monitoring stack for ShinyProxy on Kubernetes

Introduction For some time now, ShinyProxy is able to export metrics using Prometheus. After releasing this feature, we provided a dashboard for Grafana to visualize these metrics. Although this provides a good basis to build a monitoring setup around ShinyProxy, it does not provide insights in logs or resource usage of individual apps. To fill this gap, we are publishing a GitHub repository containing a comprehensive monitoring set up for ShinyProxy on Kubernetes.

Continue reading

New nonlinear least squares solvers in R with {gslnls}

Introduction Solving a nonlinear least squares problem consists of minimizing a least squares objective function made up of residuals $g_1(\boldsymbol{\theta}), \ldots, g_n(\boldsymbol{\theta})$ that are nonlinear functions of the parameters of interest $\boldsymbol{\theta} = (\theta_1,\ldots, \theta_p)'$: $$ \boldsymbol{\theta}^* \ = \ \arg \min_{\boldsymbol{\theta}} \frac{1}{2} \Vert g(\boldsymbol{\theta}) \Vert^2 $$ In the context of regression, this problem is usually formulated as: $$ \begin{align} \boldsymbol{\theta}^* & \ = \ \arg \min_{\boldsymbol{\theta}} \frac{1}{2} \Vert \boldsymbol{y} - f(\boldsymbol{\theta}) \Vert^2 \\ & \ = \ \arg \min_{\boldsymbol{\theta}} \frac{1}{2} \sum_{i = 1}^n (y_i - f_i(\boldsymbol{\theta}))^2 \end{align} $$

Continue reading

Rotating log files in Rust, and reassembling them for inspection

Context Open Analytics is working on a huge data processing pipeline in the context of high-content imaging. The latest work to this end is a new product that will work in conjunction with Phaedra as part of the pipeline which now covers much more ground than before. The entire backend of this new component is written in Rust and consists of several web servers. Proper log rotation has been a focus as of late, since it is critical to be able to keep on top of things in this massive processing pipeline.

Continue reading

ShinyProxy 2.6.0

ShinyProxy 2.6.0 Today we release version 2.6.0 of ShinyProxy which includes over forty improvements. ShinyProxy is a novel, open source platform to deploy Shiny apps for the enterprise or larger organizations. Nevertheless, ShinyProxy is also an excellent choice for deploying a handful of apps in smaller organizations. While ShinyProxy is generally used to host Shiny applications, it has always been designed with the idea to host any application that can be packaged into a Docker container.

Continue reading

RDepot 1.4.3

100% Open Source Enterprise Management of R Repositories RDepot is a solution for the management of R package repositories in an enterprise environment. It allows to submit packages through a user interface or API and to automatically update and publish R repositories. Multiple departments can manage their own repositories and different users can have different roles in the management of their packages. package submission through a user interface and via the REST API modern, mobile-friendly interface to browse packages and repositories authentication and fine-grained authorization with repository roles (administrator, repository manager, package manager, user) full versioning of repositories and audit trails for use in regulated contexts built-in support for load-balanced package repositories integration with continuous integration infrastructure for quality assurance on R packages What’s new in this release?

Continue reading

ShinyProxy 2.4.0

ShinyProxy is a novel, open source platform to deploy Shiny apps for the enterprise or larger organizations. Full Kubernetes Support One of the main advantages of ShinyProxy is the use of plugable container back-ends which allows people to use ShinyProxy on a plain Docker host, on a Docker Swarm cluster or on internet-scale Kubernetes cluster in the cloud. The way organizations have been deploying ShinyProxy on Kubernetes clusters has grown exponentially and providing a means to configure ShinyProxy tailored to the specific Kubernetes setup became more important.

Continue reading

ShinyProxy 2.2.0

ShinyProxy is a novel, open source platform to deploy Shiny apps for the enterprise or larger organizations. Secured Embedding of Shiny Apps Since version 2.0.1 ShinyProxy provides a REST API to manage (launch, shut down) Shiny apps and consume the content programmatically inside broader web applications or portals. This allows to cleanly separate the responsiblity for the Shiny apps (data science teams) and those broader applications (IT teams) while still achieving seamless integration between the two from the user’s perspective.

Continue reading

ShinyProxy Christmas Release

ShinyProxy is a novel, open source platform to deploy Shiny apps for the enterprise or larger organizations. Since our previous blog post five releases took place, so it is time to provide the ‘state of affairs’ before venturing into the New Year. Kerberos and Co To some Kerberos is a multi-headed dog that guards the gates of the Underworld. To others it is enterprise technology that protects corporate networks and offers single sign-on for network services.

Continue reading

ShinyProxy 2.0.1 is out!

ShinyProxy is a novel, open source platform to deploy Shiny apps for the enterprise or larger organizations. Embedding Shiny Apps Although Shiny apps are very popular for interactive data analysis purposes, many organizations communicated a need to more closely integrate these apps within larger applications and portals. In previous releases we broke down the walls to make this happen: hiding the navbar, single-sign on, theming the landing page and advanced networking support were only a few steps in that direction.

Continue reading

Using R to Generate Live World Cup Notifications

Here in Belgium, World Cup fever is at fever pitch, but with matches starting during work hours, how is a desk worker supposed to follow along? By leaving the R environment? Blasphemy. Today we show how to use R to generate live desktop notifications for The Beautiful Game. A notification system preview, free of local bias. Overview We break the process of producing a live score notification into the following steps:

Continue reading