> ## Documentation Index
> Fetch the complete documentation index at: https://docs.germainux.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GermainUX Init Configuration

> After installing the GermainUX datastore, Germain Enterprise, Services, and infrastructure, initialize the platform by importing the configuration.

Service
`Enterprise`

Availability
2024.1

> [card] [Config Tool Import](#option-1-import-with-the-germain-config-tool)
>
> Recommended for full directories

> [card] [Configuration Console Import](#option-2-import-through-the-configuration-console)
>
> Individual files or no CLI

> [card] [Validate the configuration](#validate-the-configuration)
>
> Check logs after import

> [card] [Troubleshooting](#troubleshooting)
>
> Read config-tool logs

**Initialize the GermainUX Configuration**

After installing the GermainUX datastore, Germain Enterprise, GermainUX Services, and all required infrastructure components, initialize the platform by importing the configuration supplied with the GermainUX Service distribution.

You can import the configuration using:

| Option | Description |
| - | - |
| `The Germain Config Tool` | recommended for complete or automated deployments |
| `The Germain Configuration Console` | for manual or selective imports |

## Prerequisites

Before importing the configuration, confirm that:

* The GermainUX database or datastore is initialized.
* ZooKeeper is running and contains the required GermainUX configuration root.
* Kafka—or ActiveMQ for legacy releases—is running.
* Hazelcast is running.
* Germain Enterprise is deployed and accessible.
* The GermainUX Services distribution has been extracted.
* Your account has permission to import configuration.
* The GermainUX version of the configuration files matches the installed platform version.

## Locate the configuration files

Extract the `GermainAPMService-<version>` archive if this has not already been done.

In this guide, `SERVICE_HOME` refers to the extracted directory.

The configuration files are located under:

```text theme={null}
SERVICE_HOME/install/configuration
```

The distribution typically contains:

| Folder | Description |
| - | - |
| `core` | required platform configuration |
| `ux` | user-experience monitoring configuration |
| Technology-specific folders such as `siebel` |   |
| Other optional feature or integration configurations |   |

Always import the `core` configuration first.

## Before importing

Configuration imports can modify or replace existing settings. Before importing into an existing environment:

* Back up the current GermainUX configuration.
* Confirm that the files correspond to the correct GermainUX release.
* Review environment-specific values.
* Identify any credentials, URLs, or hostnames that must be changed.
* Test the import in a non-production environment when possible.

Do not import configuration intended for another environment without reviewing it first.

## Option 1: Import with the Germain Config Tool

This is the recommended method for importing a complete configuration directory.

The Germain Config Tool is located under:

```text theme={null}
SERVICE_HOME/bin
```

### Windows

Run:

```text theme={null}
bin\gct.bat -c imp <configuration-directory>
```

Example:

```text theme={null}
bin\gct.bat -c imp C:\germainapm\install\configuration\core
```

### Linux

Run:

```text theme={null}
bin/gct.sh -c imp <configuration-directory>
```

Example:

```text theme={null}
bin/gct.sh -c imp /opt/germainapm/install/configuration/core
```

### Import order

Import the directories in the following order:

**1. Import `core`**

**2. Confirm that the core import completed successfully**

**3. Import `ux` and any required technology-specific directories**

**4. Import customer-specific or environment-specific configuration last**

When files have parent-child relationships, import the parent first.

For example:

```text theme={null}
germain.apm.monitoringConfig.json
```

must be imported before:

```text theme={null}
germain.apm.monitoringConfig.*.json
```

### Review the import log

If the tool reports an error, review:

```text theme={null}
SERVICE_HOME/var/logs/config-tool.log
```

Additional instructions for the Germain Config Tool are available in:

```text theme={null}
SERVICE_HOME/install/configuration/gct.txt
```

Do not continue with dependent configuration files until errors in the base configuration have been resolved.

## Option 2: Import through the Configuration Console

Use the Configuration Console when configuration files must be imported individually or when the command-line tool is unavailable.

### 1 1. Open the console

Open the Germain Configuration Console.

Example:

```text theme={null}
http://<germain-host>:8080/germainapm/config
```

Sign in using an account authorized to manage the platform configuration.

### 2. Open the REST Client

In the upper-right corner, select **REST Client**, located below the logout option.

![Rest client](https://mintcdn.com/germain-ux/8KX3c-GSSWR99tdN/images/main/germain-ux-init-configuration/image-20190507-144907.png?fit=max\&auto=format\&n=8KX3c-GSSWR99tdN\&q=85\&s=0dca472b6475d284fee45a8cac592857)

Rest client - GermainUX

### 3. Import the base configuration

Start with:

```text theme={null}
germain.apm.json
```

Open the file and copy its entire JSON content.

![GermainUX Init Configuration: 3. Import the base configuration](https://mintcdn.com/germain-ux/8KX3c-GSSWR99tdN/images/main/germain-ux-init-configuration/image-20190507-144412.png?fit=max\&auto=format\&n=8KX3c-GSSWR99tdN\&q=85\&s=a8827799ec56a981f22c0487e838eb89)

In the REST Client:

**1. Paste the JSON into Request Body**

**2. Set Qualified Name to: `germain.apm `**

**3. Select the `PUT` HTTP method**

**4. Select Execute**

**5. Confirm that the request completes successfully**

**6. Refresh the Configuration Console**

The newly imported configuration structure should now be visible.

### 4. Import the remaining core files

Import the other files from the `core` directory.

For each file:

**1. Copy its JSON content into Request Body**

**2. Set the correct Qualified Name**

**3. Select `PUT`**

**4. Execute the request**

**5. Confirm that it succeeds before continuing**

The qualified name normally matches the filename without the `.json` extension.

For example:

| Filename | Qualified name |
| - | - |
| `germain.apm.json` | `germain.apm` |
| `germain.apm.monitoringConfig.json` | `germain.apm.monitoringConfig` |

Import base files before their related child files.

For example, import:

```text theme={null}
germain.apm.monitoringConfig.json
```

before importing:

```text theme={null}
germain.apm.monitoringConfig.<component>.json
```

## Import optional configuration

After importing all files from `core`, import the required files from directories such as:

```text theme={null}
ux
siebel
```

and any other feature, technology, or customer-specific directory.

> [!NOTE]
>
> **Important: Enable Merge**
>
> When importing files from any directory other than `core`, select **Merge** in the REST Client. This preserves previously imported configuration while adding or updating the new settings.
>
> If **Merge** is not selected, the import may overwrite existing configuration created by earlier REST requests.

Review each file before importing it to ensure it applies to the environment.

## Restart affected services

Some imported settings take effect immediately, while others require one or more GermainUX components to restart.

After completing the import:

| Step | Action |
| - | - |
| 1 | Review the import results and logs. |
| 2 | Restart the affected GermainUX Services. |
| 3 | Restart Germain Enterprise when required. |
| 4 | Restart Germain nodes affected by the changed configuration. |
| 5 | Confirm that all components reconnect successfully. |

For a new installation, restarting all GermainUX components provides the clearest validation that the imported configuration can be loaded.

## Validate the configuration

After the import, verify that:

* The Configuration Console displays the expected configuration hierarchy.
* All required core sections are present.
* Optional technology configurations were merged successfully.
* Germain Enterprise starts without configuration-loading errors.
* All GermainUX Services remain running.
* Germain nodes connect successfully.

> [accordion] Show all 9
>
> * The GermainUX Workspace opens without errors.
> * Expected dashboards, KPIs, rules, SLAs, and monitoring profiles are available.
> * Collected data is processed and displayed.

Review the following log if the command-line import fails:

```text theme={null}
SERVICE_HOME/var/logs/config-tool.log
```

Also review the Germain Enterprise and individual service logs for configuration-loading or dependency errors.

## Troubleshooting

### The Config Tool reports an import error

Verify:

* The configuration-directory path is correct.
* The executing account can read the files.
* The files contain valid JSON.
* The configuration matches the installed GermainUX version.
* Germain Enterprise and ZooKeeper are reachable.
* Parent configuration files were imported first.

Use `config-tool.log` to identify the first file that failed.

### A qualified name is rejected

Confirm that:

* The qualified name matches the filename without `.json`.
* The parent configuration already exists.
* Capitalization is correct.
* The request uses the `PUT` method.
* The JSON content belongs to the selected qualified name.

### Previously imported settings disappear

This usually occurs when an optional configuration was imported without selecting **Merge**.

Restore the last configuration backup or reimport the required configuration in the correct order:

**1. Core configuration**

**2. Optional configurations with Merge enabled**

**3. Environment-specific customizations**

### Configuration exists but is not applied

Confirm that:

* The affected services were restarted when required.
* The component uses the expected ZooKeeper environment root.
* The correct configuration version is active.
* No environment-specific override replaces the imported value.
* The logs confirm that the expected configuration was loaded.

## Next step

After validating the initial configuration, configure the required monitoring components, applications, users, dashboards, rules, and SLAs through the GermainUX Workspace.

Source: [GermainUX Initial Configuration](https://docs.germainux.com/main/germain-ux-init-configuration.md).

## Get Help

> [card] [Contact GermainUX Support](https://docs.germainux.com/main/support.md)
>
> The GermainUX team helps you get up and running faster, empower your team, turn data into actionable insights, and optimize performance to deliver measurable business outcomes.

> [card] Can't find what you need?
>
> Search all GermainUX docs with **Ctrl + K**, or use the feedback buttons at the bottom of this page to tell us what is missing.

The content of this document is proprietary to GERMAIN SOFTWARE.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.