.. _kieker-tools-behavior-analysis: Behavior Analysis ================= The **behavior analysis** tool processes monitoring data for users sessions, builds behavior models from the sessions and clusters these behaviors utilizing MTree and DBScan. Details on the implementation can be found in `Lars Jürgensen's thesis `_ and in the article `A Journey to comprehensible User Behavior Models `_. Usage ----- The tool uses a configuration file, i.e., it is called with ``behavior-analysis -c configuration.conf``. Configuration File ------------------ The configuration file may have the following settings: +-----------------------------------------+-------------------------------------------------+ | Parameter | Description | +=========================================+=================================================+ | clusterOutputPath | file path for the result clusters | +-----------------------------------------+-------------------------------------------------+ | medoidOutputPath | directory path for all medoids | +-----------------------------------------+-------------------------------------------------+ | classSignatureAcceptancePatternFile | acceptance patterns for class names in events. | +-----------------------------------------+-------------------------------------------------+ | operationSignatureAcceptancePatternFile | acceptance patterns for operation signatures in | | | events. | +-----------------------------------------+-------------------------------------------------+ | acceptanceMatcherMode | define how event matches should be handled: | | | normal or inverse. | +-----------------------------------------+-------------------------------------------------+ | traceSignatureProcessor | | +-----------------------------------------+-------------------------------------------------+ | clusteringDistance | | +-----------------------------------------+-------------------------------------------------+ | minPts | | +-----------------------------------------+-------------------------------------------------+ | maxAmount | | +-----------------------------------------+-------------------------------------------------+ | userSessionTimeout | | +-----------------------------------------+-------------------------------------------------+ | nodeInsertCost | node insertion cost for the graph edit distance | +-----------------------------------------+-------------------------------------------------+ | edgeInsertCost | edge insertion cost for the graph edit distance | +-----------------------------------------+-------------------------------------------------+ | eventGroupInsertCost | cost for event groups | +-----------------------------------------+-------------------------------------------------+ | parameterWeighting | when events contain payloads, these can be | | | included when calculating the GED. Default is | | | NaiveParameterWeighting which ignores the | | | payload. | +-----------------------------------------+-------------------------------------------------+ | directories | one or more Kieker log directories, separated | | | by a path separator (:/; on unix/windows) | +-----------------------------------------+-------------------------------------------------+ | dataBufferSize | read file buffer size | +-----------------------------------------+-------------------------------------------------+ | verbose | if set be more verbose regarding the analysis. | +-----------------------------------------+-------------------------------------------------+ The classSignatureAcceptancePatternFile and operationSignatureAcceptancePatternFile contain Java regular expressions to match class and operation signatures in BeforeOperationEvents.