Deployment options
Deploy the RUM Extension
Configure Drupal API monitoring
Deployment and configuration
Overview
Use the Drupal wizard in GermainUX to create a User Monitoring Profile and generate the RUM JS deployment instructions for the Drupal application. Additional GermainUX components can be deployed for deeper JavaScript diagnostics, server and database monitoring, logs, integrations, synthetic transactions, and automation.Deployment options
Prerequisites
Before deployment, confirm:- The Drupal application name and production URL.
- The Drupal environments that should be monitored.
- Access to GermainUX Workspace.
- Permission to update the Drupal theme or another approved script-deployment mechanism.
- The applicable Content Security Policy requirements.
- Network access from user browsers to GermainUX.
Show all 10
Show all 10
- Consent, masking, exclusion, and retention requirements.
- Test access to the Drupal application.
- Access to servers, logs, databases, and APIs when Engine monitoring is required.
- Approval for browser extensions when the RUM Extension or JS Profiler will be deployed.
Choose the browser deployment method
Run the Drupal wizard
- Sign in to Germain Workspace.
- Open the left navigation menu.
- Select Wizards.
- Select Drupal.

Drupal Wizard - GermainUX
- Enter the application name.
- Enter the Drupal application URL.

Application URL for Drupal - GermainUX
- Select the applicable environment.
- Configure the initial privacy settings.
- Review the generated User Monitoring Profile.

Drupal Theme details - Germain U
- Select the preferred deployment method.
- Complete the wizard.
- Copy or download the generated deployment instructions.
Deploy RUM JS through a Drupal theme
Use a custom or child theme rather than modifying Drupal core or a contributed base theme directly.Add the generated GermainUX script
Add the script generated by the Drupal wizard to the active theme using the organization’s approved Drupal asset or template mechanism. The script must:- Load on every Drupal page included in the monitoring scope.
- Load early enough to capture the required page activity.
- Use the exact URL and profile information generated by GermainUX.
- Load only in approved environments.
- Respect the organization’s consent requirements.
Use Drupal libraries when appropriate
For a maintainable theme deployment, add the generated GermainUX asset through the theme’s Drupal library configuration and attach it globally or only to the required routes. The exact implementation depends on:- Drupal version.
- Theme architecture.
- Whether the script is hosted locally or remotely.
- JavaScript aggregation.
- Consent-management requirements.
- Environment-specific configuration.
Clear Drupal caches
After updating the theme or library:- Clear the Drupal application cache.
- Clear theme and render caches.
- Rebuild caches using the approved administrative or Drush procedure.
- Purge CDN or reverse-proxy caches when applicable.
- Open a new browser session for validation.
Deploy a remote script tag
Use this method when Drupal pages can load the monitoring script directly from the GermainUX environment.Select Remote Script Tag in the Drupal wizard
Copy the complete generated tag
Add it through the approved Drupal theme, template, module, or tag-management mechanism
Ensure it appears on every intended page
Update the Content Security Policy when required
Clear Drupal and CDN caches
Validate that the script loads without browser errors
Deploy a local script tag
Use local hosting when organizational policy requires the RUM JS loader or related assets to be served from the Drupal environment.Select Local Script Tag in the wizard
Download the generated or referenced GermainUX files
Store them in an approved Drupal theme, module, or static-asset location
Preserve the required filenames and paths
Add the generated local script tag
Confirm that the files are included in the application deployment process
Define how GermainUX files will be updated during upgrades
Clear application and CDN caches
Verify the loaded file version
Deploy the JavaScript snippet
Use the generated JavaScript snippet when an approved Drupal module, tag manager, template, or custom integration manages script deployment. Confirm that the mechanism:- Executes on every intended page.
- Does not run more than once per page.
- Preserves the generated GermainUX configuration.
- Executes after consent when consent is required.
- Does not block page rendering.
- Is deployed consistently across Drupal environments.
Deploy the RUM Extension
Use the GermainUX RUM Extension when direct RUM JS deployment is unavailable or the browser application requires extension-based monitoring.Create or select the Drupal User Monitoring Profile
Deploy the extension through the approved enterprise browser-management system
Configure the GermainUX Enterprise URL
Add the Drupal URL or origin to the monitoring scope
Associate it with the correct application and profile
Configure managed permissions
Refresh or restart the browser
Validate monitoring with an authorized test user
Configure Content Security Policy
Drupal or its hosting platform may enforce a Content Security Policy. Allow only the GermainUX origins and directives required by the generated deployment. Depending on the deployment, this may include:script-srcconnect-srcimg-srcstyle-srcworker-srcframe-src
* or 'unsafe-eval' unless they are independently required, reviewed, and approved.
Validate the policy through browser developer tools and the organization’s security review process.
Configure consent and privacy
Before production deployment, configure:- Consent requirements.
- Session Replay enablement.
- Text-input masking.
- Password-field exclusion.
- Sensitive element masking.
- Page and route exclusions.
Show all 11
Show all 11
- User and bot exclusions.
- Query-string collection.
- Network request and response collection.
- Data retention.
- Access to user-session evidence.
Configure application metadata
GermainUX can associate approved Drupal metadata with browser data, including:- User identifier.
- User role.
- Drupal session identifier.
- Content type.
- Page category.
- Application version.
Show all 9
Show all 9
- Environment.
- Tenant or site.
- Drupal Commerce order or cart context when appropriate.
Retrieve installation instructions later
The wizard’s deployment instructions remain available after the profile is created:Go to Germain Workspace > Analytics > UX Monitoring Profiles
Select the Drupal profile
Open the Configuration Editor
Select Installation
Review the generated deployment options and instructions
Deploy the JS Profiler
Deploy the GermainUX JS Profiler when RUM identifies a problem that requires deeper browser or JavaScript evidence.Confirm that Drupal RUM data is collected correctly
Define the users, pages, or URLs to profile
Deploy the JS Profiler extension through the approved browser-management system
Configure the Drupal application scope
Reproduce or wait for the problem
Verify that profiler data is associated with the correct application and user session
Disable unnecessary deep profiling after sufficient evidence has been collected
Deploy the GermainUX Engine
Deploy the GermainUX Engine when monitoring is required beyond the browser. The Engine can monitor approved:- Drupal REST APIs.
- Website and service availability.
- Drupal, PHP, and web-server logs.
- Databases.
- Operating systems and infrastructure.
- Docker or Kubernetes environments.
Show all 9
Show all 9
- External integrations.
- Synthetic scenarios.
- Reports and automation.
Configure Drupal API monitoring
For Drupal APIs:Identify the critical API endpoints
Define the required method, authentication, request, and expected response
Store credentials securely in GermainUX
Configure availability and response-time monitoring
Define expected status codes or response conditions
Configure SLAs and Watches
Validate using controlled API requests
Avoid sending production-changing requests unless explicitly approved
Configure Drupal log monitoring
Identify the actual logging destinations used by the Drupal environment, such as:- Drupal logs.
- PHP logs.
- Web-server access and error logs.
- Container logs.
- Operating-system logs.
- Reverse-proxy or CDN logs.
- Integration logs.
Configure database monitoring
Drupal commonly uses MySQL, MariaDB, PostgreSQL, or another supported database.Create the database data source
Create dedicated read-only credentials
Configure availability and performance monitoring
Add approved query monitoring when application-specific data is required
Validate query cost and execution frequency
Configure KPIs and SLAs
Confirm that no sensitive Drupal data is unnecessarily collected
Deploy synthetic monitoring
Use the GermainUX RPA Bot Recorder to record critical Drupal scenarios.- Install the GermainUX RPA Bot Recorder.
- Open the Drupal application.
- Record the approved scenario.
- Add validations for critical pages and outcomes.
- Remove sensitive or environment-specific test data.
- Import the script into GermainUX.
- Assign it to a GermainUX Engine.
- Configure the execution schedule and location.
- Define KPIs, SLAs, and Watches.
- Run a controlled test.
- Open the Drupal site.
- Search for content.
- Sign in with a test account.
- Submit a controlled form.
- Access an authenticated portal.
- Complete a registration.
- Validate a Drupal Commerce journey in an approved test context.
Validate RUM deployment
After deploying RUM JS or the RUM Extension:Open the Drupal application in a supported browser
Confirm that the GermainUX script or extension is active
Navigate through several Drupal pages
Generate controlled clicks and page transitions
Confirm that browser data appears in GermainUX
Verify the application and User Monitoring Profile
Confirm that sessions and pages are associated correctly
Review a Session Replay when enabled
Test masking and exclusions
Check the browser console for CSP or script-loading errors
Confirm that the application is not monitored twice
Measure page and browser overhead
Troubleshooting
No RUM data appears
Verify:- The generated GermainUX script is present.
- The correct User Monitoring Profile is enabled.
- The Drupal URL matches the configured scope.
- The script loads successfully.
- The browser can reach GermainUX.
- CSP allows the required origins.
Show all 10
Show all 10
- Consent has been granted when required.
- Drupal or CDN caching is not serving an older template.
- No JavaScript error prevents initialization.
- Bot or user exclusions do not remove the test session.
The script appears more than once
Check:- Theme templates.
- Drupal libraries.
- Tag-manager configuration.
- Custom modules.
- RUM Extension deployment.
- Cached versions of the page.
Some Drupal pages are missing
Verify that:- The script is attached globally or to every intended route.
- Alternate themes include the script.
- Authenticated and anonymous pages use the expected templates.
- Administrative pages are included or intentionally excluded.
- Cached and uncached page variants include the script.
- Embedded or decoupled front ends are monitored separately.
Session Replay is unavailable
Verify that:- Session Replay is enabled in the User Monitoring Profile.
- Consent requirements have been satisfied.
- The page is not excluded.
- Privacy configuration does not suppress the entire page.
- The browser supports the required monitoring behavior.
- Session Replay data reaches GermainUX.
Browser monitoring affects performance
Verify that:- The script is not loaded twice.
- Verbose console or network-body collection has not been unnecessarily enabled.
- JS Profiler scope is limited.
- Session Replay settings are appropriate.
- Custom processors and extractors are lightweight.
- Monitoring and replay overhead remains within the approved level.
Deployment and configuration
- Review Drupal Monitoring.
- Run the Drupal wizard in GermainUX.
- Deploy GermainUX RUM JS through the approved theme, script-tag, or JavaScript-snippet option.
- Deploy the GermainUX RUM Extension when direct script deployment is unavailable or the complete browser-page context requires an extension.
- Configure consent, masking, exclusions, retention, and access controls.
- Deploy the GermainUX JS Profiler for deeper JavaScript and browser diagnostics.
Show all 12
Show all 12
- Deploy the GermainUX Engine for APIs, servers, databases, logs, integrations, synthetic monitoring, reports, and automation.
- Configure File and Log Monitoring for Drupal, PHP, web-server, and infrastructure logs.
- Configure the applicable database monitoring or SQL Query Monitoring.
- Deploy the GermainUX RPA Bot Recorder to create synthetic Drupal scenarios.
- Review the available KPIs for Browser Monitoring.
- Validate all monitoring components in a non-production environment before production rollout.
Get Help
Contact GermainUX Support
Can't find what you need?
The content of this document is proprietary to GERMAIN SOFTWARE.

