CII
1.5.0-pre1
Contents:
1. Introduction
1.1. Scope
1.2. Overview
2. MAL API
2.1. Overview
2.2. Installation
2.3. Introduction
2.4. CiiFactory
2.4.1. Java
2.4.2. C++
2.4.3. Python
2.5. Publish-subscribe
2.5.1. Publisher
2.5.1.1. Java
2.5.1.2. C++
2.5.1.3. Python
2.5.2. Subscriber
2.5.2.1. Java
2.5.2.2. C++
2.5.2.3. Python
2.5.3. MrvSubscriber
2.5.3.1. Java
2.5.3.2. C++
2.5.3.3. Python
2.6. Request-response
2.6.1. Client
2.6.1.1. Java
2.6.1.2. C++
2.6.1.3. Python
2.6.2. Server
2.6.2.1. Java
2.6.2.2. C++
2.6.2.3. Python
2.7. Appendix
2.7.1. Building CII application
3. MAL ICD Generation
3.1. Overview
3.2. Installation
3.2.1. Prerequisites
3.3. Editing ICD file in Eclipse
3.4. ICD Building blocks
3.4.1. Package
3.4.2. Basic types
3.4.3. Constants
3.4.4. Enumeration (Enum)
3.4.5. Union
3.4.6. Structure (struct)
3.4.7. Interface and Exception
3.4.8. Arrays
3.4.9. External Type Definition Inclusion
3.5. ICD Generation
3.6. Topic and interface definition document
3.6.1. Subsystems
3.6.2. Messaging pattern
3.6.3. Publish subscribe topic
3.6.4. Service interface
4. MAL Mappings
4.1. Overview
4.2. Installation
4.3. C++
4.3.1. DDS
4.3.2. ZPB
4.3.3. OPC UA
4.4. Java
4.4.1. DDS
4.4.2. ZPB
4.4.3. OPC UA
4.5. Python
5. MAL Python Mappings
5.1. Introduction
5.2. Prerequisites
5.3. Using Python MAL API
5.3.1. Importing top level Python module, obtaining CiiFactory reference
5.3.2. Loading and registering MAL mappings
5.3.3. Python MAL API relative time parameters (timeouts/durations)
5.3.4. Using Publisher-Subscriber interface
5.3.4.1. Using Subscriber/Publisher as a Context Manager
5.3.4.2. Constructing list of QoS parameters
5.3.4.3. Constructing Data Event filters
5.3.5. Using Request-Reply interface
5.3.5.1. Using Request-Reply client as Context Manager
5.3.5.2. Constructing list of QoS parameters
6. Configuration
6.1. Overview
6.2. Introduction
6.2.1. Classes
6.2.1.1. Configuration classes
6.2.1.2. Metadata classes
6.2.2. Instances
6.2.2.1. Metadata instances
6.2.2.2. Configuration instance
6.3. Prerequisites
6.3.1. Local DB initialization
6.3.2. Includes/Imports
6.3.2.1. Java imports
6.3.2.2. CPP Includes
6.3.2.3. Python imports
6.4. Basic usage
6.4.1. Example description
6.4.2. Creating a simple configuration using YAML definitions
6.4.2.1. Java client
6.4.2.2. CPP client
6.4.2.3. Python client
6.4.3. Creating a simple configuration using GUI
6.4.3.1. Creating a simple class in GUI
6.4.3.2. Creating a target configuration for simple class in GUI
6.4.3.3. Generating classes from the classes defined in GUI
6.4.4. CRUD operations
6.4.4.1. Java CRUD
6.4.4.2. CPP CRUD
6.4.4.3. Python CRUD
6.4.5. Using the cache operations
6.4.5.1. Java cache example
6.4.5.2. CPP Cache
6.4.5.3. Python cache example
6.5. Advanced usage
6.5.1. Custom metadata class
6.5.2. Using referenced classes
6.5.2.1.
J
ava referenced type
6.5.2.2. CPP referenced type
6.5.2.3. Python referenced type
6.5.3. Using check values
6.5.3.1. Java checked functions
6.5.3.2. CPP checked functions
6.5.3.3. Python checked functions
6.6. Additional information
6.6.1. Config tool
6.6.1.1. Class generation
6.6.1.2. Deployment and undeployment
6.6.2. Generic types
6.6.3. Java search example
6.6.4. Large data – binary files
6.6.5. Extending metadata classes with additional logic
6.6.6. Accessing statistics using the JMX
6.7. GUI
6.7.1. General
6.7.2. Configuration GUI settings
6.7.3. Main Window
6.7.3.1. Filtering the values
6.7.4. Menu
6.7.5. Target Config Tab
6.7.5.1. Selecting configuration
6.7.5.2. Adding new configuration entity
6.7.5.3. Setting configuration value
6.7.5.4. Setting metadata instance and version
6.7.5.5. Version management
6.7.6. Configuration class Tab
6.7.6.1. Selecting configuration class
6.7.6.2. Adding new configuration class entity
6.7.6.3. Adding member fields to the configuration class
6.7.6.4. Delete configuration class
6.7.7. Metadata Class Tab
6.7.7.1. Selecting metadata class
6.7.7.2. Adding new metadata class entity
6.7.7.3. Adding metadata class attribute
6.7.7.4. Delete metadata class
6.7.8. Metadata Instance Tab
6.7.8.1. Selecting metadata instance
6.7.8.2. Adding new metadata instance
6.7.9. Setting metadata instance value
6.7.9.1. Version management
6.7.10. Notify OLDB button
6.8. Config client API listing
6.8.1. Java API code
6.8.2. CPP API code
6.8.3. Python bindings code
6.9. Config point value type to language types mapping
6.10. Default metadata instance mapping
6.11. Class definition reserved words
6.12. JSON/YAML Schema
6.12.1. Configuration class schema
6.12.2. Metadata class schema
6.12.3. Configuration instance schema
6.12.4. Metadata instances schema
6.13. GUI configuration file
6.14. Configuration client settings
6.15. Configuration service settings
6.16. Code produced by the generators
7. Online Database
7.1. Overview
7.2. Introduction
7.3. Prerequisites
7.3.1. WAF Modules
7.3.2. Services
7.3.2.1. Redis
7.3.2.2. HDFS
7.3.2.3. Calculation Service
7.3.2.4. Configuration Service
7.3.3. Configuration
7.3.3.1. OLDB Client Configuration
7.3.3.2. Calculation Service Configuration
7.4. OLDB Library Usage
7.4.1. Includes/Imports
7.4.1.1. Java
7.4.1.2. C++
7.4.1.3. Python
7.4.1.4. Java
7.4.1.5. C++
7.4.1.6. Python
7.4.1.7. Basic Example
7.4.1.8. Subscribing Example
7.4.1.9. Advanced Example
7.5. Advanced Topics
7.5.1. OLDB Statistics
7.5.1.1. OLDB Client Statistics
7.5.1.2. Calculation Service Statistics
7.5.2. Disabling Writes to Data Points
7.5.3. Custom functions in Data Point Formulas
7.5.4. Manipulating Data Point Metadata
7.5.5. Data Point Configuration
7.5.6. External Redis Servers
7.5.7. Changing the Storage Location of the Data Point
7.6. OLDB API LIBRARY
7.6.1. CiiOldb
7.6.2. CiiOldbDataPoint
7.6.2.1. Data Point URI
7.6.2.2. Data Point Value
7.6.2.3. Metadata
7.7. OLDB CLI
7.7.1. Read operations
7.7.1.1. Standard Usage
7.7.1.2. Retrieving Value Formula and Quality Expression
7.7.1.3. Saving value to a File
7.7.2. Write operation
7.7.2.1. Standard Usage
7.7.2.2. Setting Quality and Timestamp
7.7.2.3. Setting Formula
7.7.2.4. Setting Quality Expression
7.7.2.5. Writing Value from a File
7.7.2.6. Writing Value directly from the formula.
7.7.3. Subscribe operations
7.7.3.1. Standard Usage
7.7.3.2. Output to Files
7.8. GUI
7.8.1. General
7.8.2. Configuration File
7.8.3. Functionality
7.8.3.1. Main Window
7.8.3.2. Menu
7.8.4. Hierarchy view
7.9. Data Point Value Type to Language Types Mapping
7.10. Default Metadata Instance Names
7.11. OLDB API LISTING
7.11.1. CiiOldb
7.11.2. CiiOldbDataPoint
8. Error Handling
8.1. Overview
8.2. Introduction
8.2.1. Standard workflow
8.2.2. CII Exceptions
8.2.2.1. Error stack
8.2.2.2. Indexing Service
8.2.3. Conditions API
8.2.4. Serialization
8.3. Installation
8.3.1. Prerequisites and waf modules
8.4. Usage
8.4.1. Includes/Imports
8.4.1.1. Java
8.4.1.2. CPP
8.4.1.3. Python
8.4.1.4. QT
8.4.2. Creating an SVN repository
8.4.3. Creating the exceptions
8.4.3.1. Java
8.4.3.2. CPP
8.4.3.3. Python
8.4.4. Wrapping native exceptions
8.4.5. Search script
8.4.5.1. Configuring the script
8.4.5.2. Usage of the search script
8.4.6. Exceptions examples
8.4.6.1. Building an Error Stack
8.4.6.2. Throwing a CPP Exception with Extra Information
8.4.6.3. Exception Serialization from CPP to Java
8.4.7. Using the Condition API
8.5. Using the QT Error Dialog Widget
8.6. Indexing service
8.6.1. Configuring indexing service
8.6.2. Running the indexing service
8.6.3. Accessing the indexed data
8.7. API
8.7.1. CII Exception methods
8.7.2. CPP macros
8.7.3. Conditions API
8.7.3.1. Java
8.7.3.2. CPP
8.7.3.3. Python
8.8. Serialization code example
8.8.1. CPP serialization server code
8.8.2. Java serialization client code
9. Logging
9.1. Overview
9.2. Introduction
9.2.1. Logsink directory
9.2.2. Loggers and Appenders
9.2.3. Log Layouts
9.2.4. Postmortem buffer
9.3. Prerequisites
9.3.1. WAF Modules
9.3.2. Services
9.3.2.1. Logging Services
9.3.3. Includes/Imports
9.3.3.1. Java
9.3.3.2. C++
9.3.3.3. Python
9.4. Logging Library Usage
9.4.1. CiiLogManager
9.4.2. CiiLogMessageBuilder
9.4.3. Logging Configuration
9.4.3.1. Java
9.4.3.2. C++
9.4.3.3. Python
9.4.4. Log Layouts
9.4.4.1. Java
9.4.4.2. C++
9.4.4.3. Python
9.4.5. Basic usage example with default configuration
9.4.5.1. Java
9.4.5.2. C++
9.4.5.3. Python
9.4.6. Basic usage example with custom configuration
9.4.6.1. Java
9.4.6.2. C++
9.4.6.3. Python
9.4.7. Adding optional information to log messages
9.4.7.1. Java
9.4.7.2. C++
9.4.7.3. Python
9.4.8. String formatting
9.4.8.1. Compile-time validation
9.4.9. Using the Postmortem Buffer
9.4.9.1. Java
9.4.9.2. C++
9.4.9.3. Python
9.5. CLI tool
9.6. Logging services configuration
9.6.1. Filebeat
9.6.1.1. Basic configuration example
9.6.1.2. Directory structure
9.6.2. Logstash
9.6.2.1. Forwarding log events
9.6.2.2. Persisting Log events
9.6.2.3. Handling Log Events
9.6.2.4. Configuring Logstash
9.6.2.5. Using multiple pipelines
9.6.2.6. Persistent queues
9.6.3. Logging Services Statistics
9.6.3.1. Filebeat Metrics HTTP Endpoint
9.6.3.2. Logstash Monitoring APIs
9.7. Logging GUI
9.7.1. LogViewer Qt GUI
9.7.1.1. Main Window
9.7.1.2. Filter and query controls
9.7.1.3. Adding new local log file entry to logsink
9.7.2. Logtrail
9.7.2.1. Kibana index patterns
9.7.2.2. Cross-cluster search
9.7.2.3. Logtrail configuration
9.7.2.4. Main Window
9.8. Tracing
9.8.1. Introduction
9.8.1.1. Traces and Spans
9.8.2. Tracing Library Usage
9.8.2.1. Tracing request-reply communication
9.8.2.2. Tracing publish-subscribe communication
9.8.2.3. Includes/Imports
9.8.2.4. Basic usage example
9.8.2.5. Mal pub/sub and request/response tracing basic examples
9.8.2.6. Context Propagation
9.8.3. Tracing Services
9.8.3.1. Jaeger Agent
9.8.3.2. Jaeger Collector
9.8.3.3. Jaeger Query
9.8.4. Tracing GUI (Jaeger UI)
9.9. CII Log Client API
9.9.1. Java
9.9.1.1. CiiLogManager
9.9.1.2. CiiLogMessageBuilder
9.9.1.3. CiiLayout
9.9.1.4. CiiSimpleLayout
9.9.2. C++
9.9.2.1. CiiLogManager
9.9.2.2. CiiLogMessageBuilder
9.9.2.3. CiiLogConfigurator
9.9.2.4. CiiLayout
9.9.2.5. CiiSimpleLayout
9.9.3. Python
9.9.3.1. CiiLogManager
9.9.3.2. CiiLogConfigurator
9.9.3.3. CiiLogMessageBuilder
9.10. CII Log Fields
10. Alarm
10.1. Overview
10.2. Introduction
10.3. Prerequisites
10.3.1. Required modules
10.3.2. Services
10.4. Alarm Usage Examples
10.4.1. Creating the Input Data Point
10.4.2. Configuring the Alarm Service
10.4.2.1. Definfing general settings
10.4.2.2. Defining IASIOs
10.4.2.3. Importing a Transfer Function
10.4.2.4. Defining DASUs
10.4.2.5. Defining the Supervisor
10.4.2.6. Defining the Plugin
10.4.3. Running the Alarm service
10.4.3.1. Alarm Services
10.4.3.2. Running Web Server and Display Service
10.4.3.3. Activating Alarms
10.4.3.4. Inspecting Acknowledging Shelving
10.5. Advanced
10.5.1. Creating an IAS User
10.5.2. Logging
11. Telemetry
11.1. Overview
11.2. Introduction
11.2.1. Telemetry OLDB Subscription
11.2.1.1. Data Packet
11.2.2. Telemetry Client API
11.2.2.1. Archive API
11.2.2.2. Service Management API
11.2.2.3. Telemetry CLI tools
11.3. Prerequisites
11.3.1. Services
11.3.1.1. Engineering Archive
11.3.1.2. Configuration Service
11.3.1.3. OLDB Service
11.4. Data Capture Configuration
11.4.1. Create Data Capture Configuration
11.4.2. Edit Data Capture Configuration
11.5. Telemetry Archiver API Usage
11.5.1. Basic Example
11.5.2. Archive API: storing, querying and downloading data
11.5.2.1. Imports/includes
11.5.2.2. Connection to Telemetry Archiver using MAL
11.5.2.3. Storing a data packet
11.5.2.4. Storing a list of data packets
11.5.2.5. Querying data packets
11.5.2.6. Downloading data packets
11.5.2.7. Data packet deserialization
11.5.2.8. Closing the MAL connection
11.5.3. Archive API: Big Data Storage
11.5.3.1. Imports/Includes
11.5.3.2. Creating the client instance
11.5.3.3. Writing data
11.5.3.4. Finding UUIDs of Archived Big Data Files
11.5.3.5. Reading data
11.5.3.6. Deleting files
11.5.4. Telemetry Archiver Management API
11.5.4.1. Imports/includes
11.5.4.2. Connection to Telemetry Archiver using MAL and closing the connection
11.5.4.3. Refreshing configurations
11.6. Telemetry CLI tools
11.6.1. CLI Manager
11.6.2. CLI Archiver
11.6.2.1. Storing data packets
11.6.2.2. Downloading data packets
11.6.2.3. Querying data packets
11.7. Telemetry Subscription
11.7.1. Data Capture Configuration Examples
11.7.1.1. Archive data point on absolute value change or quality change
11.7.1.2. Archive data point on relative value change or metadata change
11.7.1.3. Stop archiving the data point
11.7.2. OLDB Simulation
11.7.2.1. OLDB Mock
11.7.2.2. OLDB Simulator
11.8. Telemetry Archiver Deployment
11.8.1. Example
11.8.2. Systemd Deployment
11.8.3. Scaling Telemetry Archiver
11.8.4. Logging
11.9. Advanced Topics
11.9.1. Telemetry Archiver statistics
11.10. Archive API
11.10.1. Archive API: storing, querying and downloading data
11.10.2. Archive API: Big Data Storage
11.10.3. Telemetry Archiver Management API
11.11. Data Capture Configuration Options
11.12. Telemetry Archiver Configuration
11.13. Big Data Storage Examples
12. Service Management
12.1. Overview
12.2. Introduction
12.3. cii-postinstall
12.3.1. Roles
12.3.2. Subcommands
12.3.3. Other Functions
12.4. cii-services
12.4.1. Monitoring/Status Check
12.4.2. Start / Stop
12.5. Example
CII
Docs
»
Search
Please activate JavaScript to enable the search functionality.