Config file management has changed in a big way

April 21, 2017 / 0 comments / in General  / by CygNet Blog Admin

With the 8.5 release came the birth of a brand-new tool: Config File Manager. Designed to improve upon Config File Updater, this utility makes everything relating to configuration files simpler and more manageable. It allows you to edit any configuration file, validate values in the files and update the file version all from one interface. Let me show you what I mean.

Remote File Loading

First, we’ll take a look at the new-and-improved way to edit remote files. Before, if I wanted to edit a remote configuration, I would have to remote into a desktop at the location and then load the local configuration files from there. Then, to put the changes into effect, I’d have to open up a completely different application to restart my services. For this reason, we decided that this process needed to be changed.

With Config File Manager, I can load remote configurations without ever touching a remote desktop. As you can see below, all I need to do is select the domain and RSM(s). Once chosen, all config files from services owned by the selected RSM(s) are loaded and can be edited with this tool. Then, once I am done and would like to save the files, I can choose to restart the services that were changed. If I do, the services will restart so that my changes can instantly take effect.

Config file management has changed in a big way - Figure 1

Figure 1: The left screen shows the remote dialog with an RSM selected. The right-hand screen is the dialog that is shown when remote services are restarting.

File Editing

Along with remote operations, file editing has changed quite a bit from the previous tool. One of the biggest improvements that you will notice with the Config File Manager is the ability to see your file updates as they happen. So, if you want set the value of a keyword across multiple files, you can see those changes in the grid. Each change will be highlighted in green to show that a change has been made to the value or the enabled state of the value. In Figure 2 I made some simple changes to my files to show you what the interface looks like.

Config file management has changed in a big way - Figure 2

Figure 2: This figure shows the tool being used to edit and save configuration files.

Note that these changes aren’t made directly to the file immediately. Once I am satisfied with the changes, I can press “Finish” to review all changes. Finally, after reviewing the changes, they can be committed and the files will update accordingly.

Special Action Buttons

Changing values is similar to how it would be done in Excel. All I need to do is select the cell that I want to change, and type in the new value. This is the simplest way to modify one value at a time, but there are also two ways to modify an entire row all at once. The first is by right-clicking a cell and selecting “Set row to value.” This sets the enabled state and value of each cell in the selected row to be the same as the cell you clicked on. The second way to do so is by using the special actions offered with certain keywords. One such keyword is SVC_PORT shown in Figure 3.

Config file management has changed in a big way - Figure 3

Figure 3: The SCV_PORT pops up a dialog like the one shown on the left. Once a port and interval are selected, the SVC_PORT value of all files in the grid is changed as shown on the right.

The special action for this keyword can be used to make the SVC_PORT value unique across all files. It does so by starting at a given port number and incrementing it by the interval before setting it as the SVC_PORT for the next file. When done, all files in the window will have a unique SVC_PORT value.  There are several other special actions, but this is the only one that was not included in the previous utility.

Import and Export

Now let’s talk about a feature that was requested by some of you at WESC, import and export. With this, you can export a table of values from the Config File Manager to a .csv file. From there, you can open and edit it in Excel. Then, after some editing in Excel, you can import the .csv back into the utility and it will update all values to those that are in the imported file. This can be very useful for saving commonly used file configurations. Figure 4 displays an example .csv file that changes every ACS file to have new logging values. In it, I specify that I want to change all ACS files (“*.ACS”) as well as my FAC file and the exact keyword/value that I will change.

Config file management has changed in a big way - Figure 4

Figure 4: The file on the left is an example .csv file that is used to import into Config File Manager.

File Migration

Next, we will talk about a feature that existed behind the scenes in Config File Updater, file migration. Migration is the process of adding new keywords and removing old keywords from a configuration file to match the current CygNet version. This happened every time a file was changed in the old utility. In the new tool, however, migration is from value modifying, so file values can be changed and saved without keywords being added or removed. Then, separately, migration can be selected to ensure important keywords are present.

In Figure 5, an example of migration and what it would look like to a user is shown. In the example, I intentionally removed a needed keyword, and added a fake one. The migration process notices this and makes the appropriate changes.

Config file management has changed in a big way - Figure 5

Figure 5: Config File Manager reads the file and sees a missing keyword and an unnecessary keyword under “Logging Keywords”. When done processing, it shows two words and what will happen to them.

Implementation-wise, the biggest improvement with regards to file migration is the ability to view the proposed changes before they are made. This provides a confirmation step that helps to reduce unnecessary file reverting. And, just like with the previous tool, a backup file will be created with the old version of the file in case you want to revert.


The last and perhaps most significant addition to the new tool is file validation. Now, when a value is changed, you can know if your new value is acceptable before even saving the file. Doing so is relatively painless as well. Simply make any changes that you want and then click the validate button in the bottom left of the application. If there are any values that will create issues with CygNet services, they will populate in the table above. Then, to make it easier to find the problem value, you can press the “Update Filter” button in the right side of the table to show only the file that is causing the selected problem. Figure 6 has an example of what the validation looks like and how it responds when “Update Filter” is pressed.

Config file management has changed in a big way - Figure 6

Figure 6: When files are loaded into the tool, they can be validated using the button in the bottom left. Any validation errors will populate the lower table as shown in the picture above.

Figure 6: When files are loaded into the tool, they can be validated using the button in the bottom left. Any validation errors will populate the lower table as shown in the picture above.

Be careful, though, because while validation does look for issues, it does not find them all. Therefore, even if validation passes, there are still file values that could prevent services from starting. On the bright side, new validation rules can always be added, so please send us your suggestions.

As you can see, Config File Manager takes after Config File Updater but has many crucial improvements that make it a great replacement. There are even more great features that weren’t able to fit in this article, so check it out and let us know what you think!  And, if you have any suggestions for new features or anything else, please let us know in the comments below. Thanks!

Share this entry
Share by Mail


Blog post currently doesn't have any comments.
{{}}           {{com.blogCommentDateFormatted}}

Leave Comment

Please correct the following error(s):

  • {{ error }}

Subscribe to this blog post

Enter your email address to subscribe to this post and receive notifications of new comments by email.

Search the CygNet Blog

Subscribe to the CygNet Blog

Enter your email address to subscribe to this blog and receive notifications of new posts by email.