Package org.apache.ace.log

Examples of org.apache.ace.log.LogEvent


        String tid1 = "42";
        String tid2 = "47";

        // prepare the store
        List<LogEvent> events = new ArrayList<LogEvent>();
        events.add(new LogEvent(tid1, 1, 1, 1, 1, new Properties()));
        events.add(new LogEvent(tid2, 1, 1, 1, 1, new Properties()));
        m_serverStore.put(events);

        List<String> result = getResponse("http://localhost:" + TestConstants.PORT + "/auditlog/query");
        assertTrue("We expect at least two logs on the server.", result.size() > 1);
    }
View Full Code Here


      storeEvents();

      Properties props = new Properties();
      props.setProperty("myProperty", "myvalue");

      LogEvent event1 = new LogEvent("mytarget1", 2, 1, System.currentTimeMillis(), LogService.LOG_ERROR, props);
      LogEvent event2 = new LogEvent("mytarget1", 2, 2, System.currentTimeMillis(), LogService.LOG_ERROR, props);

      m_logStore.put(Arrays.asList(event1, event2));

      List<LogDescriptor> descriptors = m_logStore.getDescriptors();
      assertEquals(3, descriptors.size());
View Full Code Here

      storeEvents();

      Properties props = new Properties();
      props.setProperty("myProperty", "myvalue");

      LogEvent event1 = new LogEvent("mytarget1", 2, 1, System.currentTimeMillis(), LogService.LOG_ERROR, props);
      LogEvent event2 = new LogEvent("mytarget1", 2, 2, System.currentTimeMillis(), LogService.LOG_ERROR, props);

      m_logStore.put(Arrays.asList(event1, event2));

      List<LogDescriptor> descriptors = m_logStore.getDescriptors("mytarget1");
      assertEquals(2, descriptors.size());
View Full Code Here

  }

  private void storeEvents() throws IOException {
    Properties props = new Properties();
    props.setProperty("myProperty", "myvalue");
    LogEvent event1 = new LogEvent("mytarget1", 1, 1, System.currentTimeMillis(), LogService.LOG_ERROR, props);
    LogEvent event2 = new LogEvent("mytarget1", 1, 2, System.currentTimeMillis(), LogService.LOG_ERROR, props);
    LogEvent event3 = new LogEvent("mytarget2", 1, 3, System.currentTimeMillis(), LogService.LOG_ERROR, props);
    LogEvent event4 = new LogEvent("mytarget2", 1, 5, System.currentTimeMillis(), LogService.LOG_ERROR, props);
    LogEvent event5 = new LogEvent("mytarget1", 1, 4, System.currentTimeMillis(), LogService.LOG_ERROR, props);

    m_logStore.put(Arrays.asList(event1, event2, event3, event4, event5));
  }
View Full Code Here

    assertTrue("We just preregistered a target, so it should be registered.", sgo1.isRegistered());
   
    // add auditlog data
    List<LogEvent> events = new ArrayList<LogEvent>();
    Properties props = new Properties();
    events.add(new LogEvent("myNewTarget3", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
    m_auditLogStore.put(events);
    m_statefulTargetRepository.refresh();
   
    // do checks
    assertTrue("Adding auditlog data for a target does not influence its isRegistered().", sgo1.isRegistered());
    try {
        sgo1.getTargetObject();
    }
    catch (IllegalStateException ise) {
        assertTrue("We should be able to get sgo1's targetObject.", false);
    }
   
    // add auditlog data for other target
    events = new ArrayList<LogEvent>();
    props = new Properties();
    events.add(new LogEvent("myNewTarget4", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
    m_auditLogStore.put(events);
    runAndWaitForEvent(new Callable<Object>() {
        public Object call() throws Exception {
            m_statefulTargetRepository.refresh();
            return false;
View Full Code Here

    assertTrue("We just preregistered a gateway, so it should be registered.", sgo1.isRegistered());
   
    // add auditlog data
    List<LogEvent> events = new ArrayList<LogEvent>();
    Properties props = new Properties();
    events.add(new LogEvent("myNewGatewayA", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
    m_auditLogStore.put(events);
    m_statefulTargetRepository.refresh();
   
    // do checks
    assertTrue("Adding auditlog data for a gateway does not influence its isRegistered().", sgo1.isRegistered());
    try {
        sgo1.getTargetObject();
    }
    catch (IllegalStateException ise) {
        assertTrue("We should be able to get sgo1's gatewayObject.", false);
    }
    // add auditlog data for other gateway
    events = new ArrayList<LogEvent>();
    props = new Properties();
    events.add(new LogEvent("myNewGatewayB", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
    m_auditLogStore.put(events);
    runAndWaitForEvent(new Callable<Object>() {
        public Object call() throws Exception {
            m_statefulTargetRepository.refresh();
            return false;
View Full Code Here

        final String targetId = String.format("target-%s", Long.toHexString(System.nanoTime()));

        List<LogEvent> events = new ArrayList<LogEvent>();
    Properties props = new Properties();

    events.add(new LogEvent(targetId, 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
    // fill auditlog; no install data
    m_auditLogStore.put(events);
   
    runAndWaitForEvent(new Callable<Void>() {
        public Void call() throws Exception {
          m_statefulTargetRepository.refresh();
            return null;
        }
    }, false, StatefulTargetObject.TOPIC_AUDITEVENTS_CHANGED, StatefulTargetObject.TOPIC_ADDED);
   
    StatefulTargetObject sgo = findStatefulTarget(targetId);
    assertNotNull("Expected new target object to become available!", sgo);
   
    assertEquals("We expect our object's provisioning state to be Idle;", ProvisioningState.Idle, sgo.getProvisioningState());
   
    // fill auditlog with complete-data
    events = new ArrayList<LogEvent>();
    props = new Properties();
    props.put(AuditEvent.KEY_NAME, "mypackage");
    props.put(AuditEvent.KEY_VERSION, "123");
    events.add(new LogEvent(targetId, 1, 2, 2, AuditEvent.DEPLOYMENTCONTROL_INSTALL, props));
   
    m_auditLogStore.put(events);
   
    runAndWaitForEvent(new Callable<Void>() {
        public Void call() throws Exception {
          m_statefulTargetRepository.refresh();
            return null;
        }
    }, false, StatefulTargetObject.TOPIC_STATUS_CHANGED, StatefulTargetObject.TOPIC_AUDITEVENTS_CHANGED);

    assertEquals("Our last install version should be 123;", "123", sgo.getLastInstallVersion());
    assertEquals("We expect our object's provisioning state to be InProgress;", ProvisioningState.InProgress, sgo.getProvisioningState());
   
    // fill auditlog with install data
    events = new ArrayList<LogEvent>();
    props = new Properties();
    props.put(AuditEvent.KEY_NAME, "mypackage");
    props.put(AuditEvent.KEY_VERSION, "123");
    props.put(AuditEvent.KEY_SUCCESS, "false");
    events.add(new LogEvent(targetId, 1, 3, 3, AuditEvent.DEPLOYMENTADMIN_COMPLETE, props));
   
    m_auditLogStore.put(events);
   
    runAndWaitForEvent(new Callable<Void>() {
        public Void call() throws Exception {
          m_statefulTargetRepository.refresh();
            return null;
        }
    }, false, StatefulTargetObject.TOPIC_AUDITEVENTS_CHANGED, StatefulTargetObject.TOPIC_STATUS_CHANGED);
   
    assertEquals("Our last install version should be 123;", "123", sgo.getLastInstallVersion());
    assertEquals("We expect our object's provisioning state to be Failed;", ProvisioningState.Failed, sgo.getProvisioningState());
    assertFalse("Our last install was not successful, but according to the sgo it was.", sgo.getLastInstallSuccess());
   
    sgo.acknowledgeInstallVersion("123");
   
    assertEquals("We expect our object's provisioning state to be Idle;", ProvisioningState.Idle, sgo.getProvisioningState());
   
    // add another install event.
    events = new ArrayList<LogEvent>();
    props = new Properties();
    props.put(AuditEvent.KEY_NAME, "mypackage");
    props.put(AuditEvent.KEY_VERSION, "124");
    events.add(new LogEvent(targetId, 1, 4, 4, AuditEvent.DEPLOYMENTCONTROL_INSTALL, props));
   
    m_auditLogStore.put(events);
   
    runAndWaitForEvent(new Callable<Void>() {
        public Void call() throws Exception {
          m_statefulTargetRepository.refresh();
            return null;
        }
    }, false, StatefulTargetObject.TOPIC_AUDITEVENTS_CHANGED, StatefulTargetObject.TOPIC_STATUS_CHANGED);
   
    assertEquals("Our last install version should be 124;", "124", sgo.getLastInstallVersion());
    assertEquals("We expect our object's provisioning state to be InProgress;", ProvisioningState.InProgress, sgo.getProvisioningState());
   
    // fill auditlog with install data
    events = new ArrayList<LogEvent>();
    props = new Properties();
    props.put(AuditEvent.KEY_NAME, "mypackage");
    props.put(AuditEvent.KEY_VERSION, "124");
    props.put(AuditEvent.KEY_SUCCESS, "true");
    events.add(new LogEvent(targetId, 1, 5, 5, AuditEvent.DEPLOYMENTADMIN_COMPLETE, props));
   
    m_auditLogStore.put(events);
   
    runAndWaitForEvent(new Callable<Void>() {
        public Void call() throws Exception {
View Full Code Here

        List<LogEvent> events = new ArrayList<LogEvent>();
    Properties props = new Properties();

    // add a target with a weird name.
    events.add(new LogEvent(targetID, 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
    // fill auditlog; no install data
    m_auditLogStore.put(events);

    runAndWaitForEvent(new Callable<Void>() {
        public Void call() throws Exception {
View Full Code Here

            List<LogDescriptor> allDescriptors = m_repository.getAllDescriptors(getID());
            List<LogDescriptor> newDescriptors = m_repository.diffLogDescriptorLists(allDescriptors, m_processedAuditEvents);

            List<LogEvent> newEvents = m_repository.getAuditEvents(newDescriptors);
            for (int position = newEvents.size() - 1; position >= 0; position--) {
                LogEvent event = newEvents.get(position);
               
                // TODO we need to check here if the deployment package is actually the right one
               
                String currentVersion = (String) event.getProperties().get(AuditEvent.KEY_VERSION);
                if (event.getType() == AuditEvent.DEPLOYMENTCONTROL_INSTALL) {
                    addStatusAttribute(KEY_LAST_INSTALL_VERSION, currentVersion);
                    setProvisioningState(ProvisioningState.InProgress);
                    sendNewAuditlog(newDescriptors);
                    m_processedAuditEvents = allDescriptors;
                    return;
                }
                else if (event.getType() == AuditEvent.DEPLOYMENTADMIN_COMPLETE) {
                    addStatusAttribute(KEY_LAST_INSTALL_VERSION, currentVersion);
                    if ((currentVersion != null) && currentVersion.equals(getStatusAttribute(KEY_ACKNOWLEDGED_INSTALL_VERSION))) {
                        setProvisioningState(ProvisioningState.Idle);
                        sendNewAuditlog(newDescriptors);
                        m_processedAuditEvents = allDescriptors;
                        return;
                    }
                    else {
                        String value = (String) event.getProperties().get(AuditEvent.KEY_SUCCESS);
                        addStatusAttribute(KEY_LAST_INSTALL_SUCCESS, value);
                        if (Boolean.parseBoolean(value)) {
                            setProvisioningState(ProvisioningState.OK);
                            sendNewAuditlog(newDescriptors);
                            m_processedAuditEvents = allDescriptors;
View Full Code Here

    }

    private void doAutoTargetReg() throws Exception {
        List<LogEvent> events = new ArrayList<LogEvent>();
        Properties props = new Properties();
        events.add(new LogEvent("anotherTarget", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
        // fill auditlog; no install data
        m_auditLogStore.put(events);

        int initRepoSize = m_statefulTargetRepository.get().size();

        // Get the processauditlog task and run it
        ServiceTracker tracker = new ServiceTracker(m_bundleContext, m_bundleContext.createFilter("(&(" + Constants.OBJECTCLASS + "="
                + Runnable.class.getName() + ")(" + SchedulerConstants.SCHEDULER_NAME_KEY + "="
                + "org.apache.ace.client.processauditlog" + "))"), null);
        tracker.open();

        final Runnable processAuditlog = (Runnable) tracker.waitForService(2000);

        if (processAuditlog != null) {
            // commit should be called
            runAndWaitForEvent(new Callable<Object>() {
                public Object call() throws Exception {
                    processAuditlog.run();
                    return null;
                }
            }, false, RepositoryAdmin.TOPIC_REFRESH);

            assertEquals("After refresh, we expect 1 target based on auditlogdata;", initRepoSize + 1, m_statefulTargetRepository.get().size());
           
            List<StatefulTargetObject> sgoList = m_statefulTargetRepository.get(m_bundleContext.createFilter("(id=another*)"));
            StatefulTargetObject sgo = sgoList.get(0);
            assertTrue("Expected one (anotherTarget) in the list.", sgo != null);

            // should be registered and auto approved
            assertTrue("The automation target operator should have registered anotherTarget.", sgo.isRegistered());
            assertTrue("The automation target operator should have auto-approved anotherTarget.", sgo.getAutoApprove());

            // add a target which will not be autoregistered
            events.clear();
            events.add(new LogEvent("secondTarget", 1, 1, 1, AuditEvent.FRAMEWORK_STARTED, props));
            m_auditLogStore.put(events);

            // do auto target action
            processAuditlog.run();
            assertEquals("After refresh, we expect an additional target based on auditlogdata;", initRepoSize + 2, m_statefulTargetRepository.get().size());
View Full Code Here

TOP

Related Classes of org.apache.ace.log.LogEvent

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.