Store plug-in information when loading plug-in, query database when removing alert
Delete unused class
This commit is contained in:
parent
a1e6a0fa5c
commit
40e3795bec
|
|
@ -15,26 +15,27 @@
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.apache.dolphinscheduler.alert.manager;
|
package org.apache.dolphinscheduler.alert.cache;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.dao.entity.Alert;
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
public class AlertPluginDefineCache {
|
||||||
import org.slf4j.LoggerFactory;
|
|
||||||
|
|
||||||
/**
|
public AlertPluginDefineCache() {
|
||||||
* SMS send manager
|
throw new IllegalStateException("Utility class");
|
||||||
*/
|
}
|
||||||
public class MsgManager {
|
|
||||||
|
|
||||||
private static final Logger logger = LoggerFactory.getLogger(MsgManager.class);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* SMS send
|
* k->pluginDefineId v->pluginDefineName
|
||||||
*
|
|
||||||
* @param alert the alert
|
|
||||||
*/
|
*/
|
||||||
public void send(Alert alert) {
|
private static Map<Integer, String> pluginDefineMap = new HashMap<>();
|
||||||
logger.info("send message {}", alert);
|
|
||||||
|
public static void addPlugin(int id, String name) {
|
||||||
|
pluginDefineMap.put(id, name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getNameById(int id) {
|
||||||
|
return pluginDefineMap.get(id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1,55 +0,0 @@
|
||||||
///*
|
|
||||||
// * 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.dolphinscheduler.alert.manager;
|
|
||||||
//
|
|
||||||
//import org.apache.dolphinscheduler.alert.utils.MailUtils;
|
|
||||||
//
|
|
||||||
//import java.util.List;
|
|
||||||
//import java.util.Map;
|
|
||||||
//
|
|
||||||
///**
|
|
||||||
// * email send manager
|
|
||||||
// */
|
|
||||||
//public class EmailManager {
|
|
||||||
// /**
|
|
||||||
// * email send
|
|
||||||
// * @param receiversList the receiver list
|
|
||||||
// * @param receiversCcList the cc List
|
|
||||||
// * @param title the title
|
|
||||||
// * @param content the content
|
|
||||||
// * @param showType the showType
|
|
||||||
// * @return the send result
|
|
||||||
// */
|
|
||||||
// public Map<String,Object> send(List<String> receiversList,List<String> receiversCcList,String title,String content,String showType){
|
|
||||||
//
|
|
||||||
// return MailUtils.sendMails(receiversList, receiversCcList, title, content, showType);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// /**
|
|
||||||
// * msg send
|
|
||||||
// * @param receiversList the receiver list
|
|
||||||
// * @param title the title
|
|
||||||
// * @param content the content
|
|
||||||
// * @param showType the showType
|
|
||||||
// * @return the send result
|
|
||||||
// */
|
|
||||||
// public Map<String,Object> send(List<String> receiversList,String title,String content,String showType){
|
|
||||||
//
|
|
||||||
// return MailUtils.sendMails(receiversList,title, content, showType);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
//}
|
|
||||||
|
|
@ -22,6 +22,7 @@ import static java.util.Objects.requireNonNull;
|
||||||
|
|
||||||
import static com.google.common.base.Preconditions.checkState;
|
import static com.google.common.base.Preconditions.checkState;
|
||||||
|
|
||||||
|
import org.apache.dolphinscheduler.alert.cache.AlertPluginDefineCache;
|
||||||
import org.apache.dolphinscheduler.common.enums.PluginType;
|
import org.apache.dolphinscheduler.common.enums.PluginType;
|
||||||
import org.apache.dolphinscheduler.dao.entity.PluginDefine;
|
import org.apache.dolphinscheduler.dao.entity.PluginDefine;
|
||||||
import org.apache.dolphinscheduler.spi.DolphinSchedulerPlugin;
|
import org.apache.dolphinscheduler.spi.DolphinSchedulerPlugin;
|
||||||
|
|
@ -31,7 +32,6 @@ import org.apache.dolphinscheduler.spi.classloader.ThreadContextClassLoader;
|
||||||
import org.apache.dolphinscheduler.spi.params.PluginParamsTransfer;
|
import org.apache.dolphinscheduler.spi.params.PluginParamsTransfer;
|
||||||
import org.apache.dolphinscheduler.spi.params.base.PluginParams;
|
import org.apache.dolphinscheduler.spi.params.base.PluginParams;
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
@ -48,11 +48,6 @@ public class AlertPluginManager extends AbstractDolphinPluginManager {
|
||||||
private final Map<String, AlertChannelFactory> alertChannelFactoryMap = new ConcurrentHashMap<>();
|
private final Map<String, AlertChannelFactory> alertChannelFactoryMap = new ConcurrentHashMap<>();
|
||||||
private final Map<String, AlertChannel> alertChannelMap = new ConcurrentHashMap<>();
|
private final Map<String, AlertChannel> alertChannelMap = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
/**
|
|
||||||
* k->pluginDefineId v->pluginDefineName
|
|
||||||
*/
|
|
||||||
public static Map<Integer, String> pluginDefineMap = new HashMap<>();
|
|
||||||
|
|
||||||
public void addAlertChannelFactory(AlertChannelFactory alertChannelFactory) {
|
public void addAlertChannelFactory(AlertChannelFactory alertChannelFactory) {
|
||||||
requireNonNull(alertChannelFactory, "alertChannelFactory is null");
|
requireNonNull(alertChannelFactory, "alertChannelFactory is null");
|
||||||
|
|
||||||
|
|
@ -100,7 +95,7 @@ public class AlertPluginManager extends AbstractDolphinPluginManager {
|
||||||
|
|
||||||
PluginDefine pluginDefine = new PluginDefine(nameEn, PluginType.ALERT.getDesc(), paramsJson);
|
PluginDefine pluginDefine = new PluginDefine(nameEn, PluginType.ALERT.getDesc(), paramsJson);
|
||||||
int id = pluginDao.addOrUpdatePluginDefine(pluginDefine);
|
int id = pluginDao.addOrUpdatePluginDefine(pluginDefine);
|
||||||
pluginDefineMap.put(id, pluginDefine.getPluginName());
|
AlertPluginDefineCache.addPlugin(id, pluginDefine.getPluginName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,7 @@
|
||||||
|
|
||||||
package org.apache.dolphinscheduler.alert.runner;
|
package org.apache.dolphinscheduler.alert.runner;
|
||||||
|
|
||||||
|
import org.apache.dolphinscheduler.alert.cache.AlertPluginDefineCache;
|
||||||
import org.apache.dolphinscheduler.alert.plugin.AlertPluginManager;
|
import org.apache.dolphinscheduler.alert.plugin.AlertPluginManager;
|
||||||
import org.apache.dolphinscheduler.common.enums.AlertStatus;
|
import org.apache.dolphinscheduler.common.enums.AlertStatus;
|
||||||
import org.apache.dolphinscheduler.common.utils.CollectionUtils;
|
import org.apache.dolphinscheduler.common.utils.CollectionUtils;
|
||||||
|
|
@ -145,7 +146,7 @@ public class AlertSender {
|
||||||
* @return AlertResult
|
* @return AlertResult
|
||||||
*/
|
*/
|
||||||
private AlertResult alertResultHandler(AlertPluginInstance instance, AlertData alertData) {
|
private AlertResult alertResultHandler(AlertPluginInstance instance, AlertData alertData) {
|
||||||
String pluginName = AlertPluginManager.pluginDefineMap.get(instance.getPluginDefineId());
|
String pluginName = AlertPluginDefineCache.getNameById(instance.getPluginDefineId());
|
||||||
AlertChannel alertChannel = alertPluginManager.getAlertChannelMap().get(pluginName);
|
AlertChannel alertChannel = alertPluginManager.getAlertChannelMap().get(pluginName);
|
||||||
AlertResult alertResultExtend = new AlertResult();
|
AlertResult alertResultExtend = new AlertResult();
|
||||||
String pluginInstanceName = instance.getInstanceName();
|
String pluginInstanceName = instance.getInstanceName();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue