The following article should give an idea, why an asset is getting ignored while asset automation processing. The same is similar for the log messages like "taking: ", "skipping for now: " and "fail: ".

Background

For example in AAAttributeFromParent.java , like in every AA*.java , the central AssetAutomation library will be imported. You can see this from the following line with the java code:

import modules.lib.asset_automation.AssetAutomation
CODE

The AssetAutomation library provides the following code:

         FilterResult r;
...
            case IGNORE:
                logger.fine("ignoring: " + asset.toDialog());
                return;
... 
CODE

AAAttributeFromParent.java returns for example FilterResult.IGNORE , if the parent asset doesn't fulfills the conditions due to the filtered results.
The filtered results which will be passed to the java code for further processing will be filtered beforehand within the configuration user interface or through other conditions directly within the java code. Depending on the java code structure it only appears the following line within the server-0.0.log

015.05.12-14:31:32.646 FINE   : T006: AAAttributeFromParent.setup: CommandExecutor: cs-srv9.20150512.110405.001[system]: ignoring: test.ai [ID 18539]
CODE

In troubleshooting cases this is insufficient, because you would like to know "why" the asset is getting ignored.

How to answer the "why" question?

  • Have a look into the server-0.0.log for the exact ignoring log line to find the corresponding java scriptlet

  • Have a look into the java scriptlet, for example regarding AAAttributeFromParent , see app/modules/asset_attribute/AAAttributeFromParent.java and search for FilterResult.IGNORE . Now you have to have a look at the method FilterResult :

  •     @Override
        public FilterResult filter(Asset asset) throws Exception {
            Asset parent = findParent(asset);
            if (parent != null) {
                logger.info("for: " + asset.toDialog() + ", found parent: " + parent.toDialog());
                parents.put(asset.getId(), parent);
                return FilterResult.TAKE;
            }
            else {
                logger.info("for: " + asset.toDialog() + ", no parent found");
                return FilterResult.IGNORE;  <---------- here we ignore the asset,
                                               because we haven't found a parent asset
            }
        }
    CODE
  • Have a look into the current active configuration of the module which is running with the command id cs-srv9.20150512.110405.001
    Due to analyzing the configuration you should be able to find out which filter condition excludes the asset "test.ai [ID 18539]" from being processed.
    In this example it will be ignored, because at the parent search, within the configuration user interface, it's only configured to follow target relations based on the child asset "test.ai [ID 18539]". Between the child asset "test.ai [ID 18539]" and the parent asset there is only a user relation set.