Details

    • Type: Sub-task
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.3.0
    • Component/s: None
    • Labels:
      None
    • Release Notes:
      Added a config setting 'master.collect.app.containers.log' that can be set to 'false' to disable streaming of application logs back to the CDAP master log.
    • Rank:
      1|hzz4tj:

      Description

      The CDAP master logs contain log messages from itself, system services, and apps. It definitely shouldn't contain messages from apps, and it is arguable whether it should contain messages from the system services. Seeing how each system service already has its own logs and apis to get those logs, we've decided that the master log should only contain logs emitted by the local master.

      To reproduce:

      1. Deploy Purchase example

      2. Start flow

      3. Write a stream event 'bob bought 2 apples for $1'

      4. Look in CDAP master log, should see:

      2016-01-05T00:13:01,991Z INFO  c.c.c.e.p.PurchaseStore [cdh-5-4-secure-4969-1000.dev.continuuity.net] [FlowletProcessDriver-collector-0-executor] PurchaseStore:process(PurchaseStore.java:59) - Purchase info: Customer bob, ProductId apple, CatalogId
      

      which is a log message coming from the PurchaseStore class:

          LOG.info("Purchase info: Customer {}, ProductId {}, CatalogId {}",
                   purchase.getCustomer(), purchase.getProduct(), purchase.getCatalogId());
      

        Attachments

          Activity

            People

            • Assignee:
              ashau Albert Shau
              Reporter:
              ashau Albert Shau
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: