Repository: kylin Updated Branches: refs/heads/master b075d25fa -> 832112215
minor, put metadata in same dir of diag package Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/83211221 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/83211221 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/83211221 Branch: refs/heads/master Commit: 83211221563df357bb78857fb9cde9db593841bf Parents: b075d25 Author: lidongsjtu <[email protected]> Authored: Thu Jun 30 11:05:05 2016 +0800 Committer: lidongsjtu <[email protected]> Committed: Thu Jun 30 11:05:35 2016 +0800 ---------------------------------------------------------------------- .../apache/kylin/tool/CubeMetaExtractor.java | 53 +++++++++++--------- .../org/apache/kylin/tool/DiagnosisInfoCLI.java | 30 +++++------ .../apache/kylin/tool/HBaseUsageExtractor.java | 32 ++++++------ 3 files changed, 62 insertions(+), 53 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/83211221/tool/src/main/java/org/apache/kylin/tool/CubeMetaExtractor.java ---------------------------------------------------------------------- diff --git a/tool/src/main/java/org/apache/kylin/tool/CubeMetaExtractor.java b/tool/src/main/java/org/apache/kylin/tool/CubeMetaExtractor.java index 87f9381..895c4e0 100644 --- a/tool/src/main/java/org/apache/kylin/tool/CubeMetaExtractor.java +++ b/tool/src/main/java/org/apache/kylin/tool/CubeMetaExtractor.java @@ -138,34 +138,39 @@ public class CubeMetaExtractor extends AbstractInfoExtractor { badQueryHistoryManager = BadQueryHistoryManager.getInstance(kylinConfig); if (optionsHelper.hasOption(OPTION_PROJECT)) { - String projectName = optionsHelper.getOptionValue(OPTION_PROJECT); - ProjectInstance projectInstance = projectManager.getProject(projectName); - if (projectInstance == null) { - throw new IllegalArgumentException("Project " + projectName + " does not exist"); - } - addRequired(projectInstance.getResourcePath()); - List<RealizationEntry> realizationEntries = projectInstance.getRealizationEntries(); - for (RealizationEntry realizationEntry : realizationEntries) { - retrieveResourcePath(getRealization(realizationEntry)); + String projectNames = optionsHelper.getOptionValue(OPTION_PROJECT); + for (String projectName : projectNames.split(",")) { + ProjectInstance projectInstance = projectManager.getProject(projectName); + if (projectInstance == null) { + throw new IllegalArgumentException("Project " + projectName + " does not exist"); + } + addRequired(projectInstance.getResourcePath()); + List<RealizationEntry> realizationEntries = projectInstance.getRealizationEntries(); + for (RealizationEntry realizationEntry : realizationEntries) { + retrieveResourcePath(getRealization(realizationEntry)); + } + addOptional(badQueryHistoryManager.getBadQueriesForProject(projectName).getResourcePath()); } - addOptional(badQueryHistoryManager.getBadQueriesForProject(projectName).getResourcePath()); } else if (optionsHelper.hasOption(OPTION_CUBE)) { - String cubeName = optionsHelper.getOptionValue(OPTION_CUBE); - IRealization realization; - - if ((realization = cubeManager.getRealization(cubeName)) != null) { - retrieveResourcePath(realization); - } else { - throw new IllegalArgumentException("No cube found with name of " + cubeName); + String cubeNames = optionsHelper.getOptionValue(OPTION_CUBE); + for (String cubeName : cubeNames.split(",")) { + IRealization realization = cubeManager.getRealization(cubeName); + if (realization == null) { + throw new IllegalArgumentException("No cube found with name of " + cubeName); + } else { + retrieveResourcePath(realization); + } } } else if (optionsHelper.hasOption(OPTION_HYBRID)) { - String hybridName = optionsHelper.getOptionValue(OPTION_HYBRID); - IRealization realization; - - if ((realization = hybridManager.getRealization(hybridName)) != null) { - retrieveResourcePath(realization); - } else { - throw new IllegalArgumentException("No hybrid found with name of" + hybridName); + String hybridNames = optionsHelper.getOptionValue(OPTION_HYBRID); + for (String hybridName : hybridNames.split(",")) { + IRealization realization = hybridManager.getRealization(hybridName); + + if (realization != null) { + retrieveResourcePath(realization); + } else { + throw new IllegalArgumentException("No hybrid found with name of" + hybridName); + } } } http://git-wip-us.apache.org/repos/asf/kylin/blob/83211221/tool/src/main/java/org/apache/kylin/tool/DiagnosisInfoCLI.java ---------------------------------------------------------------------- diff --git a/tool/src/main/java/org/apache/kylin/tool/DiagnosisInfoCLI.java b/tool/src/main/java/org/apache/kylin/tool/DiagnosisInfoCLI.java index 570fce2..495cc5b 100644 --- a/tool/src/main/java/org/apache/kylin/tool/DiagnosisInfoCLI.java +++ b/tool/src/main/java/org/apache/kylin/tool/DiagnosisInfoCLI.java @@ -26,6 +26,7 @@ import java.util.List; import org.apache.commons.cli.Option; import org.apache.commons.cli.OptionBuilder; import org.apache.commons.io.FileUtils; +import org.apache.commons.lang3.StringUtils; import org.apache.kylin.common.KylinConfig; import org.apache.kylin.common.util.OptionsHelper; import org.apache.kylin.metadata.project.ProjectInstance; @@ -91,21 +92,20 @@ public class DiagnosisInfoCLI extends AbstractInfoExtractor { boolean includeHBase = optionsHelper.hasOption(OPTION_INCLUDE_HBASE) ? Boolean.valueOf(optionsHelper.getOptionValue(OPTION_INCLUDE_HBASE)) : true; boolean includeClient = optionsHelper.hasOption(OPTION_INCLUDE_CLIENT) ? Boolean.valueOf(optionsHelper.getOptionValue(OPTION_INCLUDE_CLIENT)) : true; boolean includeJob = optionsHelper.hasOption(OPTION_INCLUDE_JOB) ? Boolean.valueOf(optionsHelper.getOptionValue(OPTION_INCLUDE_JOB)) : true; - - for (String project : getProjects(projectInput)) { - // export cube metadata - String[] cubeMetaArgs = { "-destDir", new File(exportDir, "metadata").getAbsolutePath(), "-project", project, "-compress", "false", "-includeJobs", Boolean.toString(includeJob), "-submodule", "true" }; - CubeMetaExtractor cubeMetaExtractor = new CubeMetaExtractor(); - logger.info("CubeMetaExtractor args: " + Arrays.toString(cubeMetaArgs)); - cubeMetaExtractor.execute(cubeMetaArgs); - - // export HBase - if (includeHBase) { - String[] hbaseArgs = { "-destDir", new File(exportDir, "hbase").getAbsolutePath(), "-project", project, "-compress", "false", "-submodule", "true" }; - HBaseUsageExtractor hBaseUsageExtractor = new HBaseUsageExtractor(); - logger.info("HBaseUsageExtractor args: " + Arrays.toString(hbaseArgs)); - hBaseUsageExtractor.execute(hbaseArgs); - } + String projectNames = StringUtils.join(getProjects(projectInput), ","); + + // export cube metadata + String[] cubeMetaArgs = { "-destDir", new File(exportDir, "metadata").getAbsolutePath(), "-project", projectNames, "-compress", "false", "-includeJobs", Boolean.toString(includeJob), "-submodule", "true" }; + CubeMetaExtractor cubeMetaExtractor = new CubeMetaExtractor(); + logger.info("CubeMetaExtractor args: " + Arrays.toString(cubeMetaArgs)); + cubeMetaExtractor.execute(cubeMetaArgs); + + // export HBase + if (includeHBase) { + String[] hbaseArgs = { "-destDir", new File(exportDir, "hbase").getAbsolutePath(), "-project", projectNames, "-compress", "false", "-submodule", "true" }; + HBaseUsageExtractor hBaseUsageExtractor = new HBaseUsageExtractor(); + logger.info("HBaseUsageExtractor args: " + Arrays.toString(hbaseArgs)); + hBaseUsageExtractor.execute(hbaseArgs); } // export conf http://git-wip-us.apache.org/repos/asf/kylin/blob/83211221/tool/src/main/java/org/apache/kylin/tool/HBaseUsageExtractor.java ---------------------------------------------------------------------- diff --git a/tool/src/main/java/org/apache/kylin/tool/HBaseUsageExtractor.java b/tool/src/main/java/org/apache/kylin/tool/HBaseUsageExtractor.java index 7be03bc..d4a6ade 100644 --- a/tool/src/main/java/org/apache/kylin/tool/HBaseUsageExtractor.java +++ b/tool/src/main/java/org/apache/kylin/tool/HBaseUsageExtractor.java @@ -99,22 +99,26 @@ public class HBaseUsageExtractor extends AbstractInfoExtractor { projectManager = ProjectManager.getInstance(kylinConfig); if (optionsHelper.hasOption(OPTION_PROJECT)) { - String projectName = optionsHelper.getOptionValue(OPTION_PROJECT); - ProjectInstance projectInstance = projectManager.getProject(projectName); - if (projectInstance == null) { - throw new IllegalArgumentException("Project " + projectName + " does not exist"); - } - List<RealizationEntry> realizationEntries = projectInstance.getRealizationEntries(); - for (RealizationEntry realizationEntry : realizationEntries) { - retrieveResourcePath(getRealization(realizationEntry)); + String projectNames = optionsHelper.getOptionValue(OPTION_PROJECT); + for (String projectName: projectNames.split(",")) { + ProjectInstance projectInstance = projectManager.getProject(projectName); + if (projectInstance == null) { + throw new IllegalArgumentException("Project " + projectName + " does not exist"); + } + List<RealizationEntry> realizationEntries = projectInstance.getRealizationEntries(); + for (RealizationEntry realizationEntry : realizationEntries) { + retrieveResourcePath(getRealization(realizationEntry)); + } } } else if (optionsHelper.hasOption(OPTION_CUBE)) { - String cubeName = optionsHelper.getOptionValue(OPTION_CUBE); - IRealization realization; - if ((realization = cubeManager.getRealization(cubeName)) != null) { - retrieveResourcePath(realization); - } else { - throw new IllegalArgumentException("No cube found with name of " + cubeName); + String cubeNames = optionsHelper.getOptionValue(OPTION_CUBE); + for (String cubeName : cubeNames.split(",")) { + IRealization realization = cubeManager.getRealization(cubeName); + if (realization != null) { + retrieveResourcePath(realization); + } else { + throw new IllegalArgumentException("No cube found with name of " + cubeName); + } } }
