/** {@inheritDoc} */ @Override public void onDeployed(Class<?> cls) { assert !Thread.holdsLock(mux); boolean isTask = isTask(cls); String msg = (isTask ? "Task" : "Class") + " was deployed in SHARED or CONTINUOUS mode: " + cls; int type = isTask ? EVT_TASK_DEPLOYED : EVT_CLASS_DEPLOYED; if (ctx.event().isRecordable(type)) { GridDeploymentEvent evt = new GridDeploymentEvent(); evt.node(ctx.discovery().localNode()); evt.message(msg); evt.type(type); evt.alias(cls.getName()); ctx.event().record(evt); } if (log.isInfoEnabled()) log.info(msg); }
/** * Filter events containing visor in it's name. * * @param e Event * @return {@code true} if not contains {@code visor} in task name. */ private boolean filterByTaskName(GridEvent e, String taskName) { if (e.getClass().equals(GridTaskEvent.class)) { GridTaskEvent te = (GridTaskEvent)e; return containsInTaskName(te.taskName(), te.taskClassName(), taskName); } if (e.getClass().equals(GridJobEvent.class)) { GridJobEvent je = (GridJobEvent)e; return containsInTaskName(je.taskName(), je.taskName(), taskName); } if (e.getClass().equals(GridDeploymentEvent.class)) { GridDeploymentEvent de = (GridDeploymentEvent)e; return de.alias().toLowerCase().contains(taskName); } return true; }
/** {@inheritDoc} */ @Override public String shortDisplay() { return name() + (alias != null ? ": " + alias : ""); }
GridDeploymentEvent de = (GridDeploymentEvent)e; res.add(new VisorGridDeploymentEvent(tid, id, name, nid, t, msg, shortDisplay, de.alias()));
/** * Called for every deployed class. * * @param cls Deployed class. * @param recordEvt Flag indicating whether to record events. */ void recordDeployed(Class<?> cls, boolean recordEvt) { assert !Thread.holdsLock(mux); boolean isTask = isTask(cls); String msg = (isTask ? "Task" : "Class") + " was deployed in Private or Isolated mode: " + cls; if (recordEvt && ctx.event().isRecordable(isTask(cls) ? EVT_TASK_DEPLOYED : EVT_CLASS_DEPLOYED)) { GridDeploymentEvent evt = new GridDeploymentEvent(); // Record task event. evt.type(isTask ? EVT_TASK_DEPLOYED : EVT_CLASS_DEPLOYED); evt.node(sndNode); evt.message(msg); evt.alias(cls.getName()); ctx.event().record(evt); } if (log.isInfoEnabled()) log.info(msg); }
GridDeploymentEvent de = (GridDeploymentEvent)e; res.add(new VisorGridDeploymentEvent(tid, id, name, nid, t, msg, shortDisplay, de.alias()));
/** * Records deploy event. * * @param cls Deployed class. * @param clsLdr Class loader. * @param recordEvt Flag indicating whether to record events. */ @SuppressWarnings({"unchecked"}) private void recordDeployFailed(Class<?> cls, ClassLoader clsLdr, boolean recordEvt) { assert cls != null; assert clsLdr != null; boolean isTask = isTask(cls); String msg = "Failed to deploy " + (isTask ? "task" : "class") + " [cls=" + cls + ", clsLdr=" + clsLdr + ']'; if (recordEvt && ctx.event().isRecordable(isTask ? EVT_CLASS_DEPLOY_FAILED : EVT_TASK_DEPLOY_FAILED)) { String taskName = isTask ? U.getTaskName((Class<? extends GridComputeTask<?, ?>>)cls) : null; GridDeploymentEvent evt = new GridDeploymentEvent(); evt.message(msg); evt.node(ctx.discovery().localNode()); evt.type(isTask(cls) ? EVT_CLASS_DEPLOY_FAILED : EVT_TASK_DEPLOY_FAILED); evt.alias(taskName); ctx.event().record(evt); } if (log.isInfoEnabled()) log.info(msg); }
/** * Records deploy event. * <p> * This needs to be called in synchronized block. * * @param cls Deployed class. * @param alias Class alias. * @param recordEvt Flag indicating whether to record events. */ private void recordDeploy(Class<?> cls, String alias, boolean recordEvt) { assert cls != null; boolean isTask = isTask(cls); String msg = (isTask ? "Task" : "Class") + " locally deployed: " + cls; if (recordEvt && ctx.event().isRecordable(isTask ? EVT_TASK_DEPLOYED : EVT_CLASS_DEPLOYED)) { GridDeploymentEvent evt = new GridDeploymentEvent(); evt.message(msg); evt.node(ctx.discovery().localNode()); evt.type(isTask ? EVT_TASK_DEPLOYED : EVT_CLASS_DEPLOYED); evt.alias(alias); ctx.event().record(evt); } // Don't record JDK or Grid classes. if (U.isGrid(cls) || U.isJdk(cls)) return; if (log.isInfoEnabled()) log.info(msg); }
/** * Records undeploy event. * * @param dep Undeployed class loader. */ private void recordUndeploy(GridDeployment dep) { assert dep.undeployed(); if (ctx.event().isRecordable(EVT_TASK_UNDEPLOYED) || ctx.event().isRecordable(EVT_CLASS_UNDEPLOYED)) { for (Class<?> cls : dep.deployedClasses()) { boolean isTask = isTask(cls); String msg = isTask ? "Task locally undeployed: " + cls : "Class locally undeployed: " + cls; if (ctx.event().isRecordable(isTask ? EVT_TASK_UNDEPLOYED : EVT_CLASS_UNDEPLOYED)) { GridDeploymentEvent evt = new GridDeploymentEvent(); evt.message(msg); evt.node(ctx.discovery().localNode()); evt.type(isTask ? EVT_TASK_UNDEPLOYED : EVT_CLASS_UNDEPLOYED); evt.alias(getAlias(dep, cls)); ctx.event().record(evt); } if (log.isInfoEnabled()) log.info(msg); } } }
GridDeploymentEvent evt = new GridDeploymentEvent(); evt.node(ctx.discovery().localNode()); evt.message(msg); evt.type(type); evt.alias(depCls.getKey());
GridDeploymentEvent evt = new GridDeploymentEvent(); evt.node(sndNode); evt.message(msg); evt.type(!isTask ? EVT_CLASS_UNDEPLOYED : EVT_TASK_UNDEPLOYED); evt.alias(depCls.getKey());