Example #1
0
        XMicroExtension() : base("Micro", "micro", EXTENSION_URI)
        {
            IXFactory factory = XFactoryRegistry.Instance.CurrentDefault;

            ATTR_LENGTH = factory.CreateAttributeDiscrete(KEY_LENGTH, -1L, this);
            ATTR_PID    = factory.CreateAttributeID(KEY_PID, new XID(), this);
            ATTR_LEVEL  = factory.CreateAttributeDiscrete(KEY_LEVEL, -1L, this);

            this.eventAttributes.Add(KEY_PID, (XAttribute)ATTR_PID.Clone());
            this.eventAttributes.Add(KEY_LEVEL, (XAttribute)ATTR_LEVEL.Clone());
            this.eventAttributes.Add(KEY_LENGTH, (XAttribute)ATTR_LENGTH.Clone());

            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_PID), "Id of parent event of this event");
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_LEVEL), "Micro level of this event");
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_LENGTH), "Number of child events for this event");
        }
        XSoftwareTelemetryExtension() : base("Software Telemetry", "swtelemetry", EXTENSION_URI)
        {
            IXFactory factory = XFactoryRegistry.Instance.CurrentDefault;

            ATTR_CPU_TOTAL_USER = factory.CreateAttributeDiscrete(KEY_CPU_TOTAL_USER, -1L, this);
            this.eventAttributes.Add(KEY_CPU_TOTAL_USER, (XAttribute)ATTR_CPU_TOTAL_USER.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CPU_TOTAL_USER), "CPU usage - total time in user space, in milliseconds");

            ATTR_CPU_TOTAL_KERNEL = factory.CreateAttributeDiscrete(KEY_CPU_TOTAL_KERNEL, -1L, this);
            this.eventAttributes.Add(KEY_CPU_TOTAL_KERNEL, (XAttribute)ATTR_CPU_TOTAL_KERNEL.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CPU_TOTAL_KERNEL), "CPU usage - total time in kernel space, in milliseconds");

            ATTR_CPU_TOTAL_IDLE = factory.CreateAttributeDiscrete(KEY_CPU_TOTAL_IDLE, -1L, this);
            this.eventAttributes.Add(KEY_CPU_TOTAL_IDLE, (XAttribute)ATTR_CPU_TOTAL_IDLE.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CPU_TOTAL_IDLE), "CPU usage - total time spent idle, in milliseconds");

            ATTR_CPU_LOAD_USER = factory.CreateAttributeContinuous(KEY_CPU_LOAD_USER, -1L, this);
            this.eventAttributes.Add(KEY_CPU_LOAD_USER, (XAttribute)ATTR_CPU_LOAD_USER.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CPU_LOAD_USER), "CPU usage - load in user space");

            ATTR_CPU_LOAD_KERNEL = factory.CreateAttributeContinuous(KEY_CPU_LOAD_KERNEL, -1L, this);
            this.eventAttributes.Add(KEY_CPU_LOAD_KERNEL, (XAttribute)ATTR_CPU_LOAD_KERNEL.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CPU_LOAD_KERNEL), "CPU usage - load in kernel space");

            ATTR_THREAD_TOTAL = factory.CreateAttributeDiscrete(KEY_THREAD_TOTAL, -1L, this);
            this.eventAttributes.Add(KEY_THREAD_TOTAL, (XAttribute)ATTR_THREAD_TOTAL.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_THREAD_TOTAL), "Total number of threads");

            ATTR_THREAD_DAEMON = factory.CreateAttributeDiscrete(KEY_THREAD_DAEMON, -1L, this);
            this.eventAttributes.Add(KEY_THREAD_DAEMON, (XAttribute)ATTR_THREAD_DAEMON.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_THREAD_DAEMON), "Number of daemon threads");

            ATTR_MEMORY_USED = factory.CreateAttributeDiscrete(KEY_MEMORY_USED, -1L, this);
            this.eventAttributes.Add(KEY_MEMORY_USED, (XAttribute)ATTR_MEMORY_USED.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_MEMORY_USED), "Total memory used, measured in bytes");


            ATTR_MEMORY_TOTAL = factory.CreateAttributeDiscrete(KEY_MEMORY_TOTAL, -1L, this);
            this.eventAttributes.Add(KEY_MEMORY_TOTAL, (XAttribute)ATTR_MEMORY_TOTAL.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_MEMORY_TOTAL), "Total memory available, measured in bytes");

            ATTR_MEMORY_LOAD = factory.CreateAttributeContinuous(KEY_MEMORY_LOAD, -1L, this);
            this.eventAttributes.Add(KEY_MEMORY_LOAD, (XAttribute)ATTR_MEMORY_LOAD.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_MEMORY_LOAD), "Memory usage load");
        }
Example #3
0
        XSoftwareCommunicationExtension() : base("Software Communication", "swcomm", EXTENSION_URI)
        {
            IXFactory factory = XFactoryRegistry.Instance.CurrentDefault;

            ATTR_LOCAL_HOST  = factory.CreateAttributeLiteral(KEY_LOCAL_HOST, "__INVALID__", this);
            ATTR_REMOTE_HOST = factory.CreateAttributeLiteral(KEY_REMOTE_HOST, "__INVALID__", this);
            ATTR_LOCAL_PORT  = factory.CreateAttributeDiscrete(KEY_LOCAL_PORT, -1L, this);
            ATTR_REMOTE_PORT = factory.CreateAttributeDiscrete(KEY_REMOTE_PORT, -1L, this);

            this.eventAttributes.Add(KEY_LOCAL_HOST, (XAttribute)ATTR_LOCAL_HOST.Clone());
            this.eventAttributes.Add(KEY_LOCAL_PORT, (XAttribute)ATTR_LOCAL_PORT.Clone());
            this.eventAttributes.Add(KEY_REMOTE_HOST, (XAttribute)ATTR_REMOTE_HOST.Clone());
            this.eventAttributes.Add(KEY_REMOTE_PORT, (XAttribute)ATTR_REMOTE_PORT.Clone());


            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_LOCAL_HOST), "Local endpoint - host name");
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_LOCAL_PORT), "Local endpoint - port");
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_REMOTE_HOST), "Remote endpoint - host name");
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_REMOTE_PORT), "Remote endpoint - port");
        }
Example #4
0
        XSoftwareEventExtension() : base("Software  evt", "swevent", EXTENSION_URI)
        {
            IXFactory factory = XFactoryRegistry.Instance.CurrentDefault;

            #region Application Information
            ATTR_APP_NAME = factory.CreateAttributeLiteral(KEY_APP_NAME, "__INVALID__", this);
            this.eventAttributes.Add(KEY_APP_NAME, (XAttribute)ATTR_APP_NAME.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_APP_NAME), "User defined application name");

            ATTR_APP_NODE = factory.CreateAttributeLiteral(KEY_APP_NODE, "__INVALID__", this);
            this.eventAttributes.Add(KEY_APP_NODE, (XAttribute)ATTR_APP_NODE.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_APP_NODE), "User defined application node");

            ATTR_APP_SESSION = factory.CreateAttributeLiteral(KEY_APP_SESSION, "__INVALID__", this);
            this.eventAttributes.Add(KEY_APP_SESSION, (XAttribute)ATTR_APP_SESSION.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_APP_SESSION), "User defined application session");

            ATTR_APP_TIER = factory.CreateAttributeLiteral(KEY_APP_TIER, "__INVALID__", this);
            this.eventAttributes.Add(KEY_APP_TIER, (XAttribute)ATTR_APP_TIER.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_APP_TIER), "User defined application tier");
            #endregion

            #region Callee event location
            ATTR_CALLEE_PACKAGE = factory.CreateAttributeLiteral(KEY_CALLEE_PACKAGE, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLEE_PACKAGE, (XAttribute)ATTR_CALLEE_PACKAGE.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLEE_PACKAGE), "Callee - Package");

            ATTR_CALLEE_CLASS = factory.CreateAttributeLiteral(KEY_CALLEE_CLASS, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLEE_CLASS, (XAttribute)ATTR_CALLEE_CLASS.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLEE_CLASS), "Callee - Class");

            ATTR_CALLEE_METHOD = factory.CreateAttributeLiteral(KEY_CALLEE_METHOD, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLEE_METHOD, (XAttribute)ATTR_CALLEE_METHOD.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLEE_METHOD), "Callee - Method");

            ATTR_CALLEE_PARAMSIG = factory.CreateAttributeLiteral(KEY_CALLEE_PARAMSIG, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLEE_PARAMSIG, (XAttribute)ATTR_CALLEE_PARAMSIG.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLEE_PARAMSIG), "Callee - Parameter signature");

            ATTR_CALLEE_RETURNSIG = factory.CreateAttributeLiteral(KEY_CALLEE_RETURNSIG, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLEE_RETURNSIG, (XAttribute)ATTR_CALLEE_RETURNSIG.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLEE_RETURNSIG), "Callee - Return signature");

            ATTR_CALLEE_ISCONSTRUCTOR = factory.CreateAttributeBoolean(KEY_CALLEE_ISCONSTRUCTOR, false, this);
            this.eventAttributes.Add(KEY_CALLEE_ISCONSTRUCTOR, (XAttribute)ATTR_CALLEE_ISCONSTRUCTOR.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLEE_ISCONSTRUCTOR), "Callee - Is a class constructor");

            ATTR_CALLEE_INSTANCEID = factory.CreateAttributeLiteral(KEY_CALLEE_INSTANCEID, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLEE_INSTANCEID, (XAttribute)ATTR_CALLEE_INSTANCEID.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_INSTANCEID), "Callee - Instance id of class instance");

            ATTR_CALLEE_FILENAME = factory.CreateAttributeLiteral(KEY_CALLEE_FILENAME, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLEE_FILENAME, (XAttribute)ATTR_CALLEE_FILENAME.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLEE_FILENAME), "Callee - File name source code artifact");

            ATTR_CALLEE_LINENR = factory.CreateAttributeDiscrete(KEY_CALLEE_LINENR, -1L, this);
            this.eventAttributes.Add(KEY_CALLEE_LINENR, (XAttribute)ATTR_CALLEE_LINENR.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLEE_LINENR), "Callee - Line number is source code artifact");
            #endregion

            #region Caller event Location
            ATTR_CALLER_PACKAGE = factory.CreateAttributeLiteral(KEY_CALLER_PACKAGE, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLER_PACKAGE, (XAttribute)ATTR_CALLER_PACKAGE.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_PACKAGE), "Caller - Package");

            ATTR_CALLER_CLASS = factory.CreateAttributeLiteral(KEY_CALLER_CLASS, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLER_CLASS, (XAttribute)ATTR_CALLER_CLASS.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_CLASS), "Caller - Class");

            ATTR_CALLER_METHOD = factory.CreateAttributeLiteral(KEY_CALLER_METHOD, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLER_METHOD, (XAttribute)ATTR_CALLER_METHOD.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_METHOD), "Caller - Method");

            ATTR_CALLER_PARAMSIG = factory.CreateAttributeLiteral(KEY_CALLER_PARAMSIG, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLER_PARAMSIG, (XAttribute)ATTR_CALLER_PARAMSIG.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_PARAMSIG), "Caller - Parameter signature");

            ATTR_CALLER_RETURNSIG = factory.CreateAttributeLiteral(KEY_CALLER_RETURNSIG, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLER_RETURNSIG, (XAttribute)ATTR_CALLER_RETURNSIG.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_RETURNSIG), "Caller - Return signature");

            ATTR_CALLER_ISCONSTRUCTOR = factory.CreateAttributeBoolean(KEY_CALLER_ISCONSTRUCTOR, false, this);
            this.eventAttributes.Add(KEY_CALLER_ISCONSTRUCTOR, (XAttribute)ATTR_CALLER_ISCONSTRUCTOR.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_ISCONSTRUCTOR), "Caller - Is a class constructor");

            ATTR_CALLER_INSTANCEID = factory.CreateAttributeLiteral(KEY_CALLER_INSTANCEID, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLER_INSTANCEID, (XAttribute)ATTR_CALLER_INSTANCEID.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_INSTANCEID), "Caller - Instance id of class instance");

            ATTR_CALLER_FILENAME = factory.CreateAttributeLiteral(KEY_CALLER_FILENAME, "__INVALID__", this);
            this.eventAttributes.Add(KEY_CALLER_FILENAME, (XAttribute)ATTR_CALLER_FILENAME.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_FILENAME), "Caller - File name source code artifact");

            ATTR_CALLER_LINENR = factory.CreateAttributeDiscrete(KEY_CALLER_LINENR, -1L, this);
            this.eventAttributes.Add(KEY_CALLER_LINENR, (XAttribute)ATTR_CALLER_LINENR.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_CALLER_LINENR), "Caller - Line number is source code artifact");
            #endregion

            #region Exception Information
            ATTR_HAS_EXCEPTION = factory.CreateAttributeBoolean(KEY_HAS_EXCEPTION, false, this);
            this.logAttributes.Add(KEY_HAS_EXCEPTION, (XAttribute)ATTR_HAS_EXCEPTION.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_HAS_EXCEPTION), "Has exception data");

            ATTR_EX_CAUGHT = factory.CreateAttributeLiteral(KEY_EX_CAUGHT, "__INVALID__", this);
            this.eventAttributes.Add(KEY_EX_CAUGHT, (XAttribute)ATTR_EX_CAUGHT.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_EX_CAUGHT), "Caught exception type");

            ATTR_EX_THROWN = factory.CreateAttributeLiteral(KEY_EX_THROWN, "__INVALID__", this);
            this.eventAttributes.Add(KEY_EX_THROWN, (XAttribute)ATTR_EX_THROWN.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_EX_THROWN), "Thrown exception type");
            #endregion

            #region Runtime Information
            ATTR_NANOTIME = factory.CreateAttributeDiscrete(KEY_NANOTIME, -1L, this);
            this.eventAttributes.Add(KEY_NANOTIME, (XAttribute)ATTR_NANOTIME.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_NANOTIME), "Elapsed nanotime");

            ATTR_THREAD_ID = factory.CreateAttributeLiteral(KEY_THREAD_ID, "__INVALID__", this);
            this.eventAttributes.Add(KEY_THREAD_ID, (XAttribute)ATTR_THREAD_ID.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_THREAD_ID), "Thread id for generated event");
            #endregion

            #region Method Data
            ATTR_HAS_DATA = factory.CreateAttributeBoolean(KEY_HAS_DATA, false, this);
            this.logAttributes.Add(KEY_HAS_DATA, (XAttribute)ATTR_HAS_DATA.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_HAS_DATA), "Has method data");

            ATTR_RETURN_VALUE = factory.CreateAttributeLiteral(KEY_RETURN_VALUE, "__INVALID__", this);
            this.eventAttributes.Add(KEY_RETURN_VALUE, (XAttribute)ATTR_RETURN_VALUE.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_RETURN_VALUE), "Return value for the returning method");

            ATTR_PARAMS = factory.CreateAttributeList(KEY_PARAMS, this);
            this.eventAttributes.Add(KEY_PARAMS, (XAttribute)ATTR_PARAMS.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_PARAMS), "List of parameters for the called method");

            ATTR_PARAM_VALUE = factory.CreateAttributeLiteral(KEY_PARAM_VALUE, "__INVALID__", this);
            this.metaAttributes.Add(KEY_PARAM_VALUE, (XAttribute)ATTR_PARAM_VALUE.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_PARAM_VALUE), "A parameter value in the list params");

            ATTR_VALUE_TYPE = factory.CreateAttributeLiteral(KEY_VALUE_TYPE, "__INVALID__", this);
            this.metaAttributes.Add(KEY_VALUE_TYPE, (XAttribute)ATTR_VALUE_TYPE.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_VALUE_TYPE), "A runtime value type for a return or parameter value");
            #endregion

            #region Event type and lifecycle
            ATTR_TYPE = factory.CreateAttributeLiteral(KEY_TYPE, "__INVALID__", this);
            this.eventAttributes.Add(KEY_TYPE, (XAttribute)ATTR_TYPE.Clone());
            XGlobalAttributeNameMap.Instance.RegisterMapping("EN", QualifiedName(KEY_TYPE), "Event type");
            #endregion
        }