content: // Licensed to the Apache Software Foundation (ASF) under one
  // or more contributor license agreements.  See the NOTICE file
  // distributed with this work for additional information
  // regarding copyright ownership.  The ASF licenses this file
  // to you under the Apache License, Version 2.0 (the
  // "License"); you may not use this file except in compliance
  // with the License.  You may obtain a copy of the License at
  //
  //   http://www.apache.org/licenses/LICENSE-2.0
  //
  // Unless required by applicable law or agreed to in writing,
  // software distributed under the License is distributed on an
  // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  // KIND, either express or implied.  See the License for the
  // specific language governing permissions and limitations
  // under the License.
  package org.apache.cloudstack.diagnostics.fileprocessor;
  
  import java.util.List;
  
  import org.apache.cloudstack.framework.config.ConfigKey;
  
  public interface DiagnosticsFilesList {
  
      /**
       * Global configs below are used to set the diagnostics
       * data types applicable for each system vm.
       * <p>
       * the names wrapped in square brackets are for data types that need to first execute a script
       * in the system vm and grab output for retrieval, e.g. the output from iptables-save is written to a file
       * which will then be retrieved.
       */
      ConfigKey<String> SystemVMDefaultSupportedFiles = new ConfigKey<>(String.class,
      "diagnostics.data.systemvm.defaults", "Advanced", "iptables,ipaddr,iprule,iproute,/etc/cloudstack-release," +
              "/usr/local/cloud/systemvm/conf/agent.properties,/usr/local/cloud/systemvm/conf/consoleproxy.properties," +
              "/var/log/cloud.log,/var/log/patchsystemvm.log,/var/log/daemon.log",
              "List of supported diagnostics data file options for the CPVM and SSVM.", true, ConfigKey.Scope.Global, null, null, null, null, null, ConfigKey.Kind.CSV, null);
  
      ConfigKey<String> RouterDefaultSupportedFiles = new ConfigKey<>(String.class,
      "diagnostics.data.router.defaults", "Advanced", "iptables,ipaddr,iprule,iproute,/etc/cloudstack-release," +
              "/etc/dnsmasq.conf,/etc/dhcphosts.txt,/etc/dhcpopts.txt,/etc/dnsmasq.d/cloud.conf,/etc/dnsmasq-resolv.conf,/var/lib/misc/dnsmasq.leases,/var/log/dnsmasq.log," +
              "/etc/hosts,/etc/resolv.conf,/etc/haproxy/haproxy.cfg,/var/log/haproxy.log,/etc/ipsec.d/l2tp.conf,/var/log/cloud.log," +
              "/var/log/routerServiceMonitor.log,/var/log/daemon.log",
              "List of supported diagnostics data file options for the domain router.", true, ConfigKey.Scope.Global, null, null, null, null, null, ConfigKey.Kind.CSV, null);
  
      List<String> generateFileList();
  }
  