У нас есть app.config
мы используем с сатуратора:Продлить элемент в App.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="carbonator" type="Crypton.Carbonator.Config.CarbonatorSection, Crypton.Carbonator"/>
</configSections>
<carbonator defaultCulture="en-US" logLevel="1" collectionInterval="1000" reportingInterval="1000" >
<statsd server="127.0.0.1" port="8125" />
<counters>
<add path="processor_information.pct_processor_time.total" category="Processor" counter="% Processor Time" instance="_Total" />
<add path="memory.available_MBytes" category="Memory" counter="Available MBytes" instance="" />
<add path="memory.pct_commited_bytes_in_use" category="Memory" counter="% Committed Bytes In Use" instance="" />
</counters>
</carbonator>
</configuration>
Мы хотим, чтобы пользователи могли настроить свои собственные счетчики во внешнем файле конфигурации, который мы ссылаемся из <counters>
элемента , Например, мы хотели бы, чтобы конфигурационный файл пользователю выглядеть следующим образом:
<add path="logical_disk.pct_free_space.C" category="LogicalDisk" counter="% Free Space" instance="C:" />
<add path="logical_disk.disk_read_bytes_per_sec.C" category="LogicalDisk" counter="Disk Read Bytes/sec" instance="C:" />
<add path="logical_disk.disk_write_bytes_per_sec.C" category="LogicalDisk" counter="Disk Write Bytes/sec" instance="C:" />
Я даже не знаю, если это возможно, за пределами из appConfig
элемента, но любая помощь приветствуется.
Спасибо за ответ. Мы по-прежнему расследуем лучший подход, но я буду учитывать ваши предложения. – lhoworko
Добро пожаловать. Я бы определенно реализовал пользовательскую конфигурацию для пользовательской конфигурации, потому что вы можете контролировать все. Вы можете представить пользователю более эффективные сообщения об ошибках (фактически значимые сообщения, поскольку сообщения об ошибках по умолчанию, вызванные неправильным «app.config», могут быть довольно запутанными для пользователя). –