# neatlogic-itom-all **Repository Path**: tcsh/neatlogic-itom-all ## Basic Information - **Project Name**: neatlogic-itom-all - **Description**: NeatLogic是一套渐进式ITOM平台,致力为不同类型、不同规模用户提供完整的ITOM解决方案。功能包括ITSM、CMDB、持续集成、知识库、运维自动化、报表、巡检、研发管理、代码管理等功能。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: develop3.0.0 - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 158 - **Created**: 2023-12-28 - **Last Updated**: 2023-12-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ![NeaLogic](README_IMAGES/logo.png)

[中文](README.md) / English ## About NeatLogic is a progressive ITOM platform dedicated to providing ITOM solutions for users of different types and sizes. In addition to the open source version, we also provide secondary development, consulting and other services for enterprise customers. For inquiries, please contact zhangzm@neatlogic.com,or contact us from Slack. ![index](README_IMAGES/index.png) NeatLogic natively supports multi-tenancy (middleware sharing, database sub-tenant mode), modular expansion, already includes key core functions such as process engine, form engine, report engine, large screen, dashboard, etc., functions sensitive to data scale, such as CMDB Fully considered in the design, taking into account the performance requirements of reports and daily use. When only basic functions are used, only Tomcat, Nginx, and Mysql8+ are required, and some advanced functions, such as automatic collection, require MongoDb. \ NeatLogic provides docker image deployment mode and installation package deployment mode. It comes with all databases and middleware. All key services are encapsulated with start and stop commands. Middleware, software packages and configuration files are separated to facilitate users' daily maintenance. ## Runtime Operating system: Linux, java version: 8+, process memory: 4G or more, 8G is recommended. ## Dependencies |Component|Version|Necessary|Description| |---|---|---|---| |[Tomcat](https://tomcat.apache.org/)|9.0.75|✅|Servlet Container| |[Mysql](https://www.mysql.com/)|8.0.27|✅|Database| |[Nginx](https://www.nginx-cn.net/)|1.16.1|✅|Front-end Server| |[MongoDb](https://www.mongodb.com/)|4.4.3|✖️|Temporary database for automatic collection. Required if using the CMDB auto-collection feature| |[MinIO](https://www.minio.org.cn/)|5.0.6(2020-05-08T02:40:49Z)|✖️|Attachment storage. If not deployed, it will automatically switch to local storage mode. When sharing attachments among multiple services, the upload directory needs to be set to a shared directory, such as Nas| |[Nacos](https://nacos.io/zh-cn/)|2.1.0|✖️|Unified configuration management. If Nacos is not deployed, the configuration will be read from the local config.properties file| |[ActiveMQ Artemis](https://activemq.apache.org/components/artemis/)|2.17.0|✖️|Message queue. If there are no third-party systems consuming messages, it does not need to be deployed| ## Project Structure NeatLogic adopts a modular approach to code management. - 🌎 neatlogic-itom-all allows users to obtain all the code at once. - neatlogic-parent is used to manage the global pom file and all common third-party package references. - neatlogic-webroot is used to generate war packages and manage submodule references. The pom file can be modified as needed to load different submodules to generate the final war package. - neatlogic-framework is the base module. All submodules need to reference neatlogic-framework, and the beans of neatlogic-framework can be woven into all submodules. - neatlogic-tenant is the API part of the basic functionality beans, and is not visible to other submodules. - neatlogic-web is the front-end code. - ❌【Temporarily Not Open Source】neatlogic-master is the backend code of the tenant management module, used to manage the tenant information of neatlogic. - ❌【Temporarily Not Open Source】neatlogic-master-web is the front-end code of the tenant management module, and needs to be deployed separately from neatlogic-web during deployment. - Each other functional module needs to be split into two code modules, namely neatlogic-xxx and neatlogic-xxx-base. Due to the cross-reference limitation of maven, neatlogic-xxx-base is mainly used to be referenced by other modules, mainly containing pojo and some underlying interfaces. neatlogic-xxx needs to reference neatlogic-xxx-base, mainly containing its own exclusive business beans. ## Service Architecture ![架构图](README_IMAGES/inf.jpeg) ## Internal Plugins To enhance the efficiency of research and development, we have developed the following IDE plugins to assist in development. - 🚀 [i18nhelper-idea](../../../i18nhelper-idea/blob/main/README.en.md) is used for automatic replacement of i18n key-value pairs and text translation, exclusively for IntelliJ IDEA. The internationalization of neatlogic's backend did not adopt the official properties format solution of spring 5, but switched to the json format solution consistent with the frontend. - 🚀 [i18nhelper-vscode](../../../i18nhelper-vscode/blob/main/README.en.md) is used for automatic replacement of i18n key-value pairs and text translation, exclusively for vscode. ## About Branch - 📌 develop x.x.x: Development branch, has not been deployed and finalized in key customers yet. The main features are basically stable, and new features are continuously being added. Some features may be adjusted but will not affect usage. - 📌 release x.x.x: Release branch, has been deployed and finalized in key customers. Core features will not be largely adjusted, only functional adjustments and defect fixes will be made. - 🏁 (tag) x.x.x: Each version adjustment of release will be tagged correspondingly, usually after feature adjustments or major defect fixes. ## About Version Neatlogic has divided the version numbers into two ranges for the development and release branches. The development branch uses the interval [0, 1), while the release branch uses the interval [1, ∞). This is done to ensure that using version ranges to associate modules does not result in version conflicts. - 🔢 Develop branch version numbers start with 0, such as 0.3.1.0-SNAPSHOT. - 🔢 After the release branch is frozen, the release branch version number removes the leading 0. and the trailing -SNAPSHOT, resulting in a version number like 3.1.0. For defect fixes, the third digit is incremented, for example, 3.1.1. For feature improvements, the second digit is incremented, such as 3.2.0. ## About Maven Profile Neatlogic manages different branch version numbers and module dependencies for the community edition and commercial edition using Maven profiles. - 📇 `develop` is the profile for the development branch. If you are currently on the development branch, select this profile. All dependency package versions end with `-SNAPSHOT`. - 📇 `release` is the profile for the release branch. If you are currently on the release branch, select this profile. All dependency packages have official version numbers. - 📇 `commercial` is the profile specifically for the commercial edition. If you are using the community edition for further development, do not select this profile to avoid depending on any commercial edition modules. __❗ Note:__ You can choose either `develop` or `release`, but you can select `commercial` along with `develop` or `release`. ## Feature List ### ⭐️ Basic Functions
NumberCategoryFeatureDescription
1BasicSystem ArchitectureThe platform adopts a decoupled architecture between the front end and back end, with a pure B/S architecture that does not require the installation of any plugins. It supports access through common browsers via HTTP/HTTPS.
2Supports high availability and distributed deployment of front-end interfaces, back-end services, and execution nodes.
3The platform consists of underlying frameworks and various functional modules. The underlying framework uniformly schedules and loads functional modules, forming a complete ITOM solution.
4The platform has the ability to configure common functional extensions, such as IT service management processes, forms, data matrices, and other features.
5The platform adopts a modular architecture, allowing custom modules to be delivered to meet customer-specific or customized requirements. Users can perform secondary development based on custom modules, including adding modules, adding process components, and interface functions.
6User, Organization, and Role ManagementSupports user, organization, and role management operations such as addition, deletion, modification, and search. It also defines the relationships between users and groups, users and roles, and role and organization permissions.
7No restriction on the organizational hierarchy, supports different levels, group leadership, and position settings.
8Function Permission ManagementSupports assigning function permissions to roles, individuals, and organizational structures, restricting user access and operations.
9Service WindowsSupports multi-dimensional service window definition, including working days and working time periods.
10Log AuditAll management operations on the platform are recorded in an audit log, which allows tracing based on the operation object and time.
11Quick PasteSupports quick pasting within the platform's rich text box for user convenience.
12DashboardDashboard ManagementSupports user-defined dashboard data panels at the system level and personal level.
13Supports adding, modifying, deleting, copying, importing, and exporting dashboards.
14Dashboards support common presentation components such as text, data, tables, pie charts, radar charts, bar charts, line charts, area charts, gauges, stacked charts, scatter plots, and heat maps.
15Dashboards support quick data presentation based on selected presentation components and their corresponding data sources through configuration.
16Dashboards support user drag-and-drop layout.
17System-level dashboards can be authorized to users, roles, and organizational structures. Authorized users can view corresponding system-level dashboards.
18Data SourceData MatrixSupports user-defined data matrix addition, deletion, modification, search, import, and export management.
19Supports user-defined static data sources with custom headers and configured data. They can be used as data sources for dropdown boxes, table selectors, and other components in forms and reports.
20Supports user-configured interface for querying third-party data, which can be used as data sources for dropdown boxes, table selectors, and other components in forms and reports.
21Supports user-configured CMDB view data in this system, which can be used as data sources for dropdown boxes, table selectors, and other components in forms and reports.
22Supports user-configured SQL and the creation of query views to query data from all data tables in the system. It can be used as data sources for dropdown boxes, table selectors, and other components in forms and reports.
23Existing matrices can be copied to create new matrices that are similar to the original ones.
24Matrices support export and import, which can be used for matrix migration between different environments.
25Data WarehouseData WarehouseSupports user-defined data warehouse addition, deletion, modification, search, import, and export management.
26Supports converting basic process data tables into higher-level management objects for statistics in the user-defined data warehouse.
27Supports user-defined data sources for the data warehouse.
28Supports user-defined data objects and filter conditions for the data warehouse.
29Supports user-defined data modes for the data warehouse, such as full replacement or incremental append.
30Supports user-defined manual data synchronization and scheduled data synchronization for the data warehouse.
31User-defined data sources can be used in consumption scenarios such as big screens, dashboards, and reports.
32IntegrationInterface IntegrationSupports user-defined integration configuration and management for internal or external REST interfaces, including submission methods, authentication methods, parameter output format conversion, and parameter input format conversion.
33Supports online help dictionaries for input and output parameters of integrated interfaces, and allows direct online interface invocation and testing.
34Supports import, export, and call record auditing of integration interface lists.
35Message SubscriptionSupports subscribing or unsubscribing to messages based on message types.
36Supports temporary and persistent subscriptions for message types.
37Interface ManagementThe platform adopts a decoupled architecture between the front end and back end, with data interaction based on standard REST interfaces. Interfaces are divided into internal and external interfaces. The interface management allows viewing of interface parameters, output parameters, help information, authentication methods, and other details.
38Interfaces support enabling or disabling call records to prevent storage space wastage caused by high-frequency interface calls.
39Supports configuring multiple instances for external interfaces, as well as authentication methods, authentication users, authentication passwords, and validity periods.
40ReportsReport TemplatesSupports adding, copying, importing, and exporting report templates.
41Supports user-defined display interfaces, filter conditions, and data source configurations for report templates.
42Report conditions support common HTML components, such as text boxes, dropdown boxes, multi-select, radio buttons, date pickers, and other controls, as well as binding control data source settings.
43Report presentation supports common components such as tables, line charts, pie charts, bar charts, and other commonly used controls.
44Report data sources support standard TSQL statements and REST interfaces.
45Supports configuring access permissions for reports.
46Report ManagementSupports quickly generating management reports with different dimensions based on templates.
47Supports dividing reports based on permissions, where different users with different permissions can see different reports.
48Supports online real-time modification and update of report configurations without restarting the application service.
49Supports report export in formats such as Word, Excel, and PDF.
50Supports configuring scheduled report sending strategies.
### ⭐️ ITSM
NumberCategoryFeatureDescription
1ProcessProcess ComponentsAutomatically loads process components based on the modules loaded on the platform, such as event, problem, change, release, automation, custom release, interface invocation components, etc.
2Supports user-defined process components for secondary development, such as approval in the OA system, bastion machine authorization, etc.
3Process ManagementSupports user-defined operation and maintenance service process, supports graphical drag-and-drop layout design.
4Supports process export and import for migration between different environments.
5Supports copying existing processes to create new processes similar to the original ones.
6Supports parallel, serial, and conditional nodes in processes, can be used for convergence, diversion, and rollback of process flows.
7Nodes in processes support automatic start processing and automatic flow setting.
8Processes support user-defined personalized forms and can hide or disable certain form data in different process steps.
9Process steps support user-defined personalized actions, such as reminders, cancellations, modifications to reported content, etc.
10Process steps support user-defined notification strategies, notification actions, and notification content.
11Process steps support user-defined external call actions for step changes, allowing real-time synchronization to third-party systems.
12Processes provide automatic processing nodes for calling third-party interfaces in orchestration.
13Processes provide automation nodes and CMDB nodes to achieve closed-loop of platform product data and scenarios.
14FormForm ManagementSupports user-defined forms, supports drag-and-drop form layout.
15Provides rich components, including text, rich text, time, password, dropdown, cascading dropdown, dropdown tree, hyperlink, attachment upload, user selector, table selector, table input, etc.
16Supports different view and edit permissions for the same form on different process nodes.
17Supports data linkage in forms, such as automatically performing display, hide, disable, assignment, filtering, etc., on another control B when the value of control A changes.
18During form design, supports preview.
19Supports tabular layout for forms, supports operations such as merging rows and columns.
20Supports form version management, can quickly switch to the specified version, and supports recording version information.
21Supports copying existing forms to create new forms similar to the original ones.
22Forms support export and import for form migration between different environments.
23Service CatalogService TypesSupports user addition, modification, and deletion of service types.
24Supports common service type definitions, such as event, problem, change, release, etc.
25Supports custom display colors and work order sequence generation rules for different service types, such as type + year + month + day + the number of work orders of the same type on that day.
26Service CatalogSupports user addition, modification, and deletion of service catalogs.
27Supports unlimited levels of service catalogs, supports service catalog permissions setting, and custom reporting help for service catalogs.
28Service ChannelsSupports user addition, modification, and deletion of service channels.
29Multiple service channels can correspond to one management service process.
30Supports service channel priority, service types, service windows, service scope (permissions), service channel help, and other configurations.
31Supports specifying whether a service channel supports mobile use.
32Supports dynamic matching of SLA policies based on service channels, service windows, and priorities.
33Supports quick search and bookmarking of service channels.
34Work Order PanelWork Order CenterSupports custom personal to-do classifications from the user's perspective, such as "reported by me," "waiting for my handling," "waiting for my group to handle," "work orders I am involved in," etc.
35Configures work order view permissions based on work order types.
36Supports displaying work order data in card and list views, with red timeout indication for overdue work orders.
37Supports simple query conditions and complex combination query retrieval of work orders.
38Users can create personal work order categories based on conditions such as reporter, processor, reporting channel, and whether it is overdue, and generate fixed menus in the work order center.
39Task AssignmentManual AssignmentSupports assignment to individuals,organizations, roles, stakeholders (such as reporters, recipients) by designated personnel or the service desk.
40Supports manual intervention by users with appropriate permissions to reassign the handler, group, or role of work orders.
41Supports downstream node handlers specified by previous step handlers.
42Automatic AssignmentSupports dynamic assignment of handlers, groups, and roles based on form values.
43Supports complex dispatchers for dynamic assignment of handlers, such as average distribution based on workload, assignment to the department leader of the reporter, etc.
44User ReportingService ReportingSupports users to quickly initiate fault reporting through PC or mobile devices.
45Supports batch reporting by users with appropriate permissions through file import, for subsequent supplementary work order creation.
46Supports users with appropriate permissions or service desk personnel to initiate problem reporting on behalf of others.
47Work Order HandlingWork Order ProcessingSupports work order flow, rejection, cancellation, and management intervention operations.
48Supports operation audit of work order reporting, processing, and activity logs.
49Supports transfer, request for assistance, and consultation operations during work order processing.
50Supports synchronization of work order content to the knowledge base, generating knowledge base documents.
51Supports association and transfer of work orders to other service work orders during processing.
52Supports recording operation logs of work order lifecycles, including all changes in the lifecycle such as form modification, reply, attachment upload, work order flow, rollback, etc.
53Supports viewing work order process diagrams and global work order progress.
54Handler perspective supports the workbench mode, allowing quick switching between multiple pending tasks of the current user.
55TimelinessSLA TimelinessSupports precise timing strategies for work orders, calculating timeliness based on work order units.
56Supports timing strategies at the node level, calculating timeliness based on single nodes or multiple nodes.
57Supports dynamic timeliness settings based on priorities, impact scopes, whether the reporter is a VIP, etc.
58Supports timeout or near-term notification, with configurable automatic notifications at specific time points, such as notifications before N minutes or after N minutes of timeout; recipients of notifications can be customized.
59Supports timeout or near-term automatic reassignment, with configurable automatic reassignment strategies at specific time points, such as reassignment before N minutes or after N minutes of timeout; recipients of reassignment can be customized.
60NotificationNotification TemplatesSupports setting notification content using notification templates, and notification templates can reference work order information (including but not limited to work order number, title, service path, reported content, reporter, work order status, priority, etc.).
61Notification objects can be set to stakeholders of work orders (such as reporters, handlers), or specified users or roles.
62Notification StrategiesSupports notification methods including phone calls, SMS, etc., and supports user-defined notification plugins.
63Supports user-defined notification action points, such as activation, transfer, completion, rollback of process steps.
64Supports scheduled reminders for tasks, such as reminders for my to-do items, reminders for to-do items in my group, etc.
65Satisfaction EvaluationScore TemplatesSupports user-defined score templates, sets scoring dimensions, and associates them with processes to implement different scoring dimensions for different processes.
66Automatic ScoringSupports automatic scoring within a certain time window, and closes process steps after the time window has elapsed.
67Mobile EndService ReportingSupports users on the service side to quickly initiate problem reports for corresponding service channels.
68Work Order CenterThe mobile interface is consistent with the PC interface, supports data retrieval, work order classification, and work order processing.
69Work Order ProcessingThe mobile interface is consistent with the PC interface, supports operations such as transfer, rollback, completion, etc., in routine work order processing.
70Knowledge BaseKnowledge Base TemplatesSupports definition of knowledge base templates to simplify and standardize the process of adding knowledge.
71Knowledge BaseSupports basic management functions of the knowledge base, as well as release approval and version management for corresponding knowledge base types.
72Supports version comparison of the knowledge base, highlighting version differences.
73Supports markdown syntax, code blocks, and other highlights for display.
74Supports direct generation of knowledge from work orders.
75Knowledge PermissionsSupports custom knowledge circles, custom knowledge circle members, and approval members, with corresponding permissions to access the corresponding knowledge base.
### ⭐️ CMDB
NumberCategoryFeatureDescription
1Model ManagementSupport dynamic definition of model configurationsModel configurations can be dynamically defined, including settings for attributes, relationships, display names, unique rules, validation rules, and attribute and relationship grouping.
2Support optional field types for modelsModel properties can be configured, including attribute types, validation, and automatic collection settings. Common attribute field types include text boxes, numbers, text areas, dropdowns, dates, times, time ranges, passwords, attachments, tables, expressions, and links.
3Support model inheritance relationshipsSupport defining abstract models and model inheritance, simplifying the maintenance of model attributes and relationships.
4Support definition of model relationship typesSupport defining model relationship types, including display rules for relationships and grouping of model relationships.
5Support model relationship definitionsModel relationships support upstream and downstream references, self-referencing, and association of multiple targets. Two types of association are supported: single select and multi-select. Unique validation is supported, including uniqueness within the model and globally.
6Support different validation rules for model propertiesModel properties can have different validation rules, including regular expressions, third-party system invocations, or custom complex rule validations.
7Support unique judgment of multiple combined propertiesSupport unique judgment of multiple combined properties, for example, unique combination of IP and port while allowing the same IP and port separately.
8Support comprehensive auditing functionalityComprehensive auditing functionality that records detailed changes to attributes and relationships.
9Authorization managementGrant management or viewing permissions to different roles through authorization.
10Support definition of data compliance rules for model configuration itemsSupport setting data compliance checks for data within the model according to management requirements.
11Support setting automatic collection frequency for modelsSupport setting the automatic collection frequency and data range for models.
12Configuration Item ManagementSupport data transactionsSupport transactional operations on configuration items within the model, with preview and approval of data with only transaction submission permissions. Transaction types include: add, modify, and delete.
13Support data storage methodsSupport configuration item operations through the configuration page, batch import using Excel templates, automatic discovery, and interface operations.
14Support topology display of dataSupport topological display and display rule settings for configuration item data based on defined relationships.
15Support displaying configuration item relationships in detail viewSupport displaying configuration item relationships in tabular or list format.
16Support data-level authorizationSupport data-level authorization based on configuration item attribute values.
17Compliance checkCustom rule-based compliance checks.
18Global searchFull-text search based on keyword tokenization.
19Support configuration relationship data agingFor automatically collected relationship data, the option to set a time period for data aging and cleanup.
20Group managementCustomize read-only and maintenance permissions for configuration model data, support defining conditional rules for corresponding model configuration item data.
21Configuration ViewsSupport custom query views that display properties and relationships across modelsSupport custom query views that display properties and relationships across models based on their associations.
22Support user-configurable and searchable view propertiesView properties can be configured by users, and all properties support sorting and searching as filter conditions.
23Support multi-level grouping and total calculation based on propertiesSupport multi-level grouping based on properties and automatic calculation of the total number of configuration items queried in a view.
24Support exporting view query resultsView query results can be exported.
25Support authorization control for managing and accessing viewsSupport management and access of views through authorization control.
26Support structured display of view dataLogic grouping and hierarchical display of view data.
27Resource CenterApplication Resource CenterApplication-centric display and consumption of application resources, including modules, middleware, databases, and operating system information.
28Asset Resource CenterResource center based on resources/functional positions, including application, application instances, hardware, etc.
29Account settingsSupport binding public and private accounts to assets.
30Tag managementSupport tagging assets with different labels and querying based on labels and types.
31Auto DiscoveryNetwork segment scanningSupport network segment scanning based on IP ranges, ports, and asset characteristics.
32Asset characteristicsSupport adding and importing asset characteristics.
33Unknown devicesSupport marking features of unknown devices online and automatically importing them into the feature library.
34Data CollectionOperating system collectionIncludes major versions of Windows Server, Linux distributions, and AIX, supporting data discovery with and without agents.
35Middleware collectionCollection and discovery of popular versions of Tomcat, Nginx, WebSphere, WebLogic, Redis, Resin, Java processes, WebSphere MQ, ActiveMQ, RabbitMQ, Apache, IIS, JBoss, KeepAlive, Lighttpd, Python processes, Tuxedo, ZooKeeper, and Memcached.
36Database collectionIncludes major versions of MySql, Oracle, DB2, MSSQLServer, MongoDB, Elasticsearch, Hadoop, Sybase, PostgreSQL, and Informix.
37Network device collectionIncludes popular load balancing devices such as F5 and A10, as well as switches, routers, and firewalls from various vendors.
38Virtualization collectionSupports vSphere 6.0+, SMTX, and Huawei FusionCompute data collection and relationship calculation.
39Server hardware collectionSupplementing and calculating data for manually imported hardware devices.
40Fiber optic data collectionData supplementation and relationship calculation for mainstream fiber optic versions.
41Storage device collectionSpecific to customer site environments, including IBM DS series, IBM Flash series, IBM V7000 series, IBM SVC, IBM FlashSystem 900, EMC RPA, EMC VNX, NetApp, HDS VSP series, HDS AMS series.
42Data ConsumptionRESTful APISupports RESTful API management for all CMDB operations, including custom authentication methods, access frequency, and time restrictions. Common operations include model management, configuration item management, and view queries.
43Message subscriptionCMDB configuration item operations push data to message queues, including add, modify, and delete operations.
### ⭐️ Operations Automation
NumberCategoryFeatureDescription
1ParametersGlobal ParametersSupports basic management of global parameters for automation jobs, including add, delete, modify, and query operations.
2Supports global parameter field types such as text, password, date, text area, etc.
3Predefined ParametersSupports basic management of predefined parameters for automation jobs, including add, delete, modify, and query operations.
4Supports predefined parameter sets based on tool libraries and atomic operations.
5Supports referencing global parameters in predefined parameter sets.
6ClassificationTool ClassificationSupports basic management of tool classifications, including add, delete, modify, and query operations.
7Supports viewing the statistics of tool libraries, custom atomic operations, and associated orchestrations under each classification.
8Supports setting tool library permissions based on types.
9Tool CatalogSupports basic management of tool catalogs, including add, delete, modify, and query operations.
10Supports setting permissions for tool libraries based on catalogs.
11ScenariosOrchestration ScenariosSupports basic management of automation scenarios, including add, delete, modify, and query operations.
12Supports defining automation scenario classifications based on types, scenarios, and job positions.
13Supports setting different usage scenarios within a combined orchestration, where each scenario represents a different execution phase of the orchestration. This allows for multiple usage scenarios in a single orchestration.
14Tool LibrariesBuilt-in Tool LibrariesPlatform includes commonly used basic tool libraries, including basic tools, file operations, configuration backups, etc. Each automation module also has its own module-specific tool library, such as service start/stop, disaster recovery switch, software installation, SQL processing, inspection, backup, and automatic collection.
15Supports online testing of built-in tools.
16Supports online help for built-in tool libraries, including input parameters, output parameters, execution methods, and risk levels.
17Supports associating custom display templates with built-in tool libraries.
18Custom Atomic OperationsSupports common scripting languages including Python, Ruby, VBScript, Perl, PowerShell, CMD, Bash, csh, ksh, sh, and JavaScript.
19Supports various input and output parameter types, including text, text area, password, file, time, date, single selection, multi-selection, switch, account, JSON object, node information. Parameters can have default values.
20Supports command-line parameters with the ability to specify or not specify the number of command-line parameters.
21Supports setting risk levels for custom tools.
22Supports binding custom tools to tool catalogs.
23Supports Git version management, allowing import and export of atomic operations from Git.
24Supports version auditing and publishing for custom tools.
25Supports common connection protocols such as SSH, WinRM, Tagent, IPMI, HTTP, HTTPS, Telnet, SNMP, SMI, etc.
26Supports connection methods, such as remote target machine execution, local execution, and local-to-remote execution.
27Supports online testing and validation of custom atomic operations.
28Supports import and export of remote operations for environment migration.
29Combined ToolsOrchestration ManagementSupports basic management functions for combined orchestration, including add, delete, modify, and query operations.
30Supports custom orchestration design with graphical drag-and-drop layout.
31Supports copying existing combined orchestrations to create new orchestrations similar to the original ones.
32Supports customizing stages or stage groups within combined orchestrations. Tools within stages can be executed in series, parallel, or based on conditional logic.
33Supports execution policies for stages in combined orchestrations, including full execution, batch execution, and gradual rollout.
34Supports dividing combined orchestrations into logical scenarios. During execution, scenarios can be selected for quick execution based on the logical scenarios.
35Supports job notification strategies for stages in combined orchestrations.
36Supports defining multiple tool libraries or custom atomic operations within stages. Data transfer within or across stages is supported.
37Supports defining job parameters for combined orchestrations, including text, text area, password, file, time, date, single selection, multi-selection, switch, account, JSON object, node information. Parameters can have default values, be required, and have validation rules.
38Supports passing parameters between tool libraries or custom operations and stages within combined orchestrations.
39Supports parameter template referencing for tool libraries or custom atomic operations, enabling batch modification and assignment.
40Supports authorization for combined orchestrations, including execution permissions and modification permissions.
41Supports predefined execution targets for combined orchestrations, as well as dynamic selection of execution targets during execution. Stage-specific target settings take precedence over global orchestration targets.
42Supports referencing job parameters, upstream tool output parameters, predefined parameter sets, global parameters, and static parameters within combined orchestrations.
43Supports dynamic target configuration for stages in combined orchestrations, where output parameters from upstream stages serve as execution targets for downstream stages.
44Supports execution policies for tool libraries and custom atomic operations, such as whether to continue or terminate on failure.
45Supports export and import of combined orchestrations for migration between environments.
46Combined ExecutionOrchestration ExecutionSupports scheduling combined orchestrations for execution.
47Supports immediate execution of combined orchestrations by authorized users.
48Supports setting concurrent quantity and batch execution for combined orchestrations.
49Supports multiple methods for specifying execution targets, including direct node selection, target range specification using filters, and text input.
50Supports dynamic target configuration, where upstream node output parameters are used as execution targets.
51Supports failure termination and failure continuation strategies. When some nodes fail, intervention is possible, and errors can be ignored for continued execution.
52Supports termination and rerun operations, with options for full rerun or skipping successful nodes.
53Supports validation of orchestration execution, with validation completed jobs not eligible for rerun, termination, and other operations.
54Supports exporting job results to Excel, including node result information, execution stage information, and job output parameters.
55Supports viewing and exporting node run logs, output parameter viewing and exporting, and viewing single node run logs.
56Execution AgentAgentSupports common operating systems, such as Windows, Linux, AIX.
57Supports distributed deployment and execution based on management network segments.
58Supports online status, log, and configuration viewing, as well as online management operations such as start and stop.
59Agent has minimal resource consumption on the operating system, with resource limits such as CPU <= 2% and memory <= 200MB.
### ⭐️ Inspection
NumberCategoryFeatureDescription
1Inspection ManagementInspection DefinitionSupports threshold definition for inspection plugin metrics within the scope of inspection.
2Supports configuration of inspection object thresholds from an application perspective.
3Application InspectionAllows viewing of the application inspection resource inventory in a tree structure based on application systems, application modules, and environments.
4Enables scheduled inspections for individual applications within the scope of inspection.
5Supports manual initiation of inspections for individual applications, application modules, and environments.
6Enables export of the latest problem list for application inspections.
7Supports email notifications for application inspection problem lists.
8Enables export of inspection reports from an application perspective.
9Asset InspectionAllows viewing of asset inspection objects from the perspective of assets and functional positions.
10Supports scheduled inspections for specific types of assets.
11Allows manual initiation of inspections for individual asset objects.
12Enables export of inspection reports for individual asset objects.
13Configuration InspectionSupports inspection of application, operating system, and network configuration file backup content.
14Supports defining the path of inspection configuration files and supports wildcard expressions in the asset inventory interface.
15Automatically generates versions when configuration files change and supports online comparison of configuration file version differences.
16Inspection MethodsInspection MethodsProvides general inspection collection plugins that match the actual inspection scope of users.
17Supports user-defined script-based inspections in common scripting languages, including Python, Ruby, VBScript, Perl, PowerShell, CMD, Bash, csh, ksh, sh, and JavaScript.
18Inspection ResultsLatest ProblemsAllows quick searching of inspection assets by application, asset, inspection status, and other conditions.
19Enables quick viewing of problem lists for assets by type.
20Supports export of the latest problem lists.
21Inspection ScopeApplication InspectionSupports HTTP URL simulation: The system can simulate HTTP request sequences to inspect relevant performance metrics such as response status and response time.
22Supports ICMP detection: The system simulates ICMP request sequences and returns indicators such as system response time.
23Supports packet sequence detection: The system simulates Socket requests and returns information such as system response time and status.
24Simulates user access to the system to confirm system availability and inspect system access and functional usage time.
25Operating System InspectionSupports inspections of Windows, Linux, and AIX operating systems in multiple versions, collecting data such as host running status, CPU, memory, storage, I/O, inbound/outbound network traffic, etc.
26Virtualization InspectionSupports inspections of vCenter, VMware, and Huawei FusionCompute virtualization devices.
27Middleware InspectionSupports inspections of middleware resources such as weblogic, Tomcat, Apache, Jetty, WebSphere, tuxedo, Nginx, etc., collecting middleware running status.
28Database InspectionSupports inspections of Oracle, MySQL, SQL Server, MongoDB, PostgreSQL databases, etc., collecting database running status.
29Network InspectionSupports inspections of network devices/objects such as network switches, F5 servers, firewalls, dedicated lines, etc., collecting device/object running status, resource consumption, etc. Covers common network switch and firewall brands.
30Container InspectionSupports inspections of the health and performance status of running Docker containers and supports inspections of applications within Docker containers.
31Storage InspectionThe specific storage device depends on the customer's on-site environment, and supports inspections of IBM DS series, IBM Flash series, IBM V7000 series, IBM SVC, IBM FlashSystem 900, EMC RPA, EMC VNX, NetApp, HDS VSP series, HDS AMS series, etc.
32Server Hardware InspectionSupports inspections of servers from Dell, IBM, Inspur, Huawei, etc., using out-of-band management network cards.
### ⭐️ DevOps
NumberCategoryFunction PointDescription
1ParametersGlobal ParametersSupports basic management of adding, deleting, modifying, and querying global parameters for automated jobs.
2Supports global parameter fields such as text, password, date, and text area.
3Predefined ParametersSupports basic management of adding, deleting, modifying, and querying predefined parameters for automated jobs.
4Supports predefined parameter sets based on tool libraries and atomic operations.
5Supports referencing global parameters in predefined parameter sets.
6CategoriesTool CategoriesSupports basic management of adding, deleting, modifying, and querying tool categories.
7Supports viewing the statistics of tool libraries, custom atomic operations, and associated orchestrations under a category.
8Supports setting tool library permissions based on types.
9Tool DirectorySupports basic management of adding, deleting, modifying, and querying tool directories.
10Supports setting permissions for tool libraries based on directories.
11ScenesOrchestration ScenesSupports basic management of adding, deleting, modifying, and querying automation scenes.
12Supports defining automation scene categories based on types, scenes, and job positions.
13Supports setting different usage scenes within a combination orchestration, where each scene represents a different execution phase in the orchestration. Scenes can meet the requirements of multiple usage scenarios in one orchestration.
14Tool LibraryBuilt-in Tool LibrariesIn addition to commonly used basic tool libraries, it also includes file operations, configuration backup, SQL execution, service start/stop, WebSphere deployment plugins, K8s deployment plugins, Docker deployment plugins, WebLogic deployment plugins, etc.
15Supports online testing of built-in tools.
16Supports online help for built-in tool libraries, including input parameters, output parameters, execution methods, risk levels, etc.
17Supports associating built-in tool libraries with custom display templates.
18Custom Atomic OperationsSupports common scripting languages, including Python, Ruby, VBScript, Perl, PowerShell, CMD, Bash, csh, ksh, sh, JavaScript.
19Supports various input and output parameter types, including text, text area, password, file, time, date, single choice, multiple choice, switch, account, JSON object, node information. Parameters can be set with default values.
20Supports command-line parameters and can specify the number of command-line parameters.
21Supports setting risk levels for custom tools.
22Supports binding custom tools to tool directories.
23Supports version control based on Git and importing/exporting atomic operations from/to Git.
24Supports version review and release for custom tools.
25Supports common connection protocols such as SSH, WinRM, Tagent, IPMI, HTTP, HTTPS, Telnet, SNMP, SMI, etc.
26Supports connection methods such as remote target machine execution, local execution, and local-to-remote execution.
27Supports online testing and verification of custom atomic operations.
28Supports import and export of atomic operations for environment migration between different environments.
29Release ManagementRelease TemplatesSupports defining templates for specific types of releases, such as WebLogic release, to quickly complete release configuration by selecting the corresponding template when configuring a specific instance.
30Supports template configuration for regular single-instance and clustered deployments, such as WebLogic application updates.
31Release ConfigurationSupports basic management of combining release templates.
32Supports custom scene-based release orchestration, supports graphical drag-and-drop layout design.
33Supports copying existing release combinations for creating new similar combinations.
34Supports customizing stages or stage groups for tools within a release combination orchestration. Tools within a stage can be executed in serial, parallel, or conditionally.
35Supports full, batch, and gray execution strategies for tools within a release combination orchestration stage.
36Supports adding, editing, and deleting basic playbooks. Basic playbooks can be authorized to be called at specific levels, including visibility at the subsystem level, environment level, and instance level.
37Allows direct invocation of orchestration tool libraries and custom atomic operations within orchestration playbooks, simplifying the design process of playbooks.
38Supports orchestration of playbooks at the subsystem, system environment, and release instance levels, enabling orchestration of multiple playbooks, and quick execution, addition, modification, and other operations of playbooks.
39Same playbooks can be inherited and reused between different management units, and the priority order is as follows: application instance level, subsystem environment level, subsystem level.
40Scene PresetsSupports preselecting settings for releases within a system based on scenes, such as compile-only, build, backup, rollback, SQL execution, application start/stop, etc.
41Compile & BuildSupports automated compilation, packaging, and automatic deployment of application code starting from SVN or Git code repositories. It also supports automatic execution and deployment of database scripts and application configuration files obtained from SVN.
42Supports automatic maintenance of code baselines, automatically merging modifications from the baseline to the release branch after deployment, and automatically merging modifications from the baseline to the deployment branch before compilation.
43Supports extraction and display of JUnit test result data.
44Supports integration with SonarQube code scanning and provides scanning result list.
45Provides version locking functionality. After locking, only authorized users can compile the code again to prevent untested code changes before production release.
46Supports automatic compilation and packaging of Java applications using tools such as Maven, Ant, Gradle; supports automated compilation and packaging of .Net, C, VC++, Java applications; also supports custom script design for compilation and packaging to accomplish custom compilation and packaging of applications.
47For completed applications after compilation, the platform supports material organization based on custom needs and re-completes automated packaging of the organized materials.
48Configuration Modification/ReplacementSupports automated deployment of application configuration files, including automated modification and replacement of configuration files.
49Supports automatic configuration for server-specific differences, supports configuration template functionality, and combines configuration templates with environment configuration to generate final configuration files that can adapt to different environments (e.g., SIT, UAT, PRD).
50Database Script Auto ExecutionAutomatically identifies the target and execution sequence of DB scripts based on certain rules and runs them in serial or parallel. Users can choose to commit or roll back when errors occur. Operations are reentrant, and successfully executed scripts will not be executed again. The platform can automatically detect modified DB scripts and provide prompts. DB script execution is supported using MySql client, Oracle SQLPlus, db2cli-compatible execution methods, allowing DB scripts that can be run in the above-mentioned tools to be executed directly in the deployment tool.
51When there is an error in the execution of database scripts, the platform page supports user interaction, and users can choose to submit or roll back. Supports real-time display of rollback/commit transactions, and supports color marking of keywords and their corresponding lines.
52Supports one-click publishing of multiple DB scripts without input and explanations; supports selecting and executing multiple DB scripts.
53DB script operations are reentrant, and successfully executed scripts will not be repeated. The platform can automatically detect modified database scripts and provide prompts.
54Supports rollback of database scripts, clearly lists rollback script list, and allows interactive rollback operations. Rollback script operations are reentrant, and successfully executed scripts cannot be repeated.
55Checks and recompiles invalid objects for Oracle databases.
56Deployment & PublishingSupports automated deployment of applications on Linux, Unix, Windows, and other systems.
57Supports built-in deployment plugins, including Tomcat, WebLogic, and WAS, and supports extension.
58Supports one-click batch deployment of applications, where multiple system versions can be released at once. The priority of application systems should be considered. During the release process, operations in the batch release can be paused, rerun, etc., and already fixed operations can be re-released.
59Real-time display of the status of each release process is required for both automated deployment of a single application and one-click deployment of multiple applications.
60Supports application version rollback, and the platform can quickly select any historical version for rollback.
61Supports monitoring the status of application instances. After version release, the platform can easily detect and view the health status of application instances.
62Supports application restart. Multiple instances of the application can be started and stopped in parallel or sequentially. Independent authorization management is provided, which can be granted to specific users, enabling users to deploy the platform to restart applications and view logs automatically.
63Supports completeness and version consistency verification of materials to be released, supports automatic scanning of database scripts.
64Code ManagementCode ManagementSupports checking if version branches (integration branches) have merged code changes from the code baseline (master) before compilation.
65After production release and successful verification, automatically triggers the merging of corresponding versions of code back to the baseline (master).
66Supports triggering automatic compilation of versions and automatic deployment to the SIT environment by setting Git or SVN hooks, and allows viewing relevant descriptions of code changes corresponding to the compilation.
67Supports automatic tagging of code branches.
68Version CenterArtifact ManagementSupports built-in application version artifact management, and production can obtain versions from its own artifacts.
69Supports integration with third-party version artifact repositories such as Nexus.
70Version ManagementSupports archiving of released version codes, SQL, configuration files.
71Supports version definition, version open/close operations.
72Version PublishingBatch PublishingSupports defining batch publishing orchestration based on release pipelines and release jobs.
73Supports batch execution of multiple jobs. Within the same batch, multiple release jobs can be orchestrated in serial or parallel based on the logical relationship between applications. Users can complete the batch execution of all jobs with a single button.
74Supports lane definition and configuration for tasks in batch publishing.
75Supports task status policies in batch publishing, such as continuing on failure, waiting strategies, etc.
76
77Supports batch publishing authorization configuration.
78One-Click PublishingSupports viewing the release list from an application perspective and provides quick search functionality to quickly find configurations of application systems or modules.
79Supports release rollback.
80Supports execution based on scene or full release configuration.
81Allows selective execution of specific steps in existing automated deployment processes.
82Supports outer loop execution of multiple operational playbooks based on application server instances. DB scripts can be executed within a specific loop.
83Supports scheduled execution of job tasks. The platform supports regular and periodic job execution, automatically creating and running jobs based on defined trigger rules, facilitating the automatic deployment of the test environment.
84Supports viewing application logs. Users can view and download application log files in real time within the automated deployment platform.
85Supports white-box release, where every action during the release process should be displayed in real-time scrolling logs.
86Supports viewing operation log records during the release process. Each release step should have log information, including but not limited to operator, operation time, and duration. The operation logs can be exported for auditing purposes.
87Supports real-time scrolling printout of release logs. For applications with asynchronous startup, the log can be tailed in real-time until the application startup is completed.
88All status logs displayed in real-time should be differentiated by different colors to distinguish error messages, warning messages, and normal messages, facilitating user identification.
### ⭐️ R&D Management
ID Category Feature Description Open Source
1 System Management Project Management Manages all projects, including basic information, application settings, and options for ending, deleting, or saving the project as a new template.
2 Priority Management Supports sorting for defining urgency levels of requirements, defects, and tasks.
3 Template Management Allows customizing project templates, application settings including start/stop and sorting, and attributes and status configurations within application settings.
4 Projects Dynamic Project Management Dynamic settings for application settings, dynamic control over project members.
5 Iteration Planning Includes add, edit, and delete iterations. Supports configuring requirements, tasks, defects, test plans, and test cases in iterations. Allows enabling or disabling iterations.
6 Manage Requirements, Tasks, Defects, Test Plans, etc. Add, edit, and delete common requirements, tasks, defects, test plans, and test cases for the project.
7 Interlink Data Quickly create or link tasks, defects, and test cases in requirement details. Tasks, defects, and test case details can also be linked to requirements.
8 Test Plan & Test Case Association Quickly create or link test cases in test plans and supports batch processing of test cases and tracking completeness.
9 Workflow Management Requirements, tasks, defects, etc. can transition through states and be reassigned until closed.
10 Gantt Chart Support View requirements, defects, and tasks via Gantt chart.
11 Field Settings for Lists All lists support field settings, including changing the order and visibility of fields.
12 Conditional Filtering for Lists Data in lists can be filtered through compound search, including keywords, priority, status, creation date, etc.
13 View and Edit Data Details View detailed information of requirements, tasks, defects, etc. and modify data and linked items in the details page.
14 Follow Feature Follow data from the details page for quick access later.
15 Code Repository Association, e.g., GitLab, GitHub
16 Workbench My To-Do Displays all items where the logged-in user is the handler, including requirements, tasks, defects, test plans, and test cases.
17 My Completed Displays all items the logged-in user has handled, including requirements, tasks, defects, test plans, and test cases.
18 My Reported Displays all items where the logged-in user is the creator, including requirements, tasks, defects, test plans, and test cases.
19 My Followed Displays all items the logged-in user is following, including requirements, tasks, defects, test plans, and test cases.
20 Dashboard Data Dashboard Displays project-related data through charts.
## Build Code [Click to see build manual](CODE-BUILD.en.md) ## Online Demo [Click here to register and use](http://demo.neatlogic.com:9098/neatlogic) >- limited resources, first come first served. >- If there is no quota after registration, you will be notified by email when there is an available quota. >- If you don’t use it for 3 consecutive days, the resources will be reclaimed. If you still want to use it, you will need to reactivate by sending an email again. ## Building Tutorial [Click to view building Tutorial](WAR_INSTALL.md) ## Local Deployment Coming soon... ## Docker deployment [Click to view docker deployment manual](QUICK_START.en.md) ## Contact us - **Enterprise WeChat**