net-connector 0.15.0 → 0.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/docs/architecture.md +2 -0
- data/lib/net/connector/engine/errors.rb +4 -4
- data/lib/net/connector/engine/result.rb +2 -2
- data/lib/net/connector/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '018997c50add69731aacb31142b1e3df48006b78938250e1672f01f4fc1c6a2a'
|
|
4
|
+
data.tar.gz: 3a02c44fb3e3a23a10826f2a945869ea65fdaa5ff74567ab8447b94c254f66c6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9b7658eaf59499b5a68e6a20d860b2ad94652263e9d3bb808a5edcde5954d4d7190aa032f9713071d65524216a1ca3ed5e52240c45ab2b78f1f05f1d783efcf8
|
|
7
|
+
data.tar.gz: 8850fd64970d7924379af37b06fbbbda055ce11aeb1d35091bf23198911448e3f613b1d84e5614ab7c711cdabc567c0fc48870849eb3b66bb65ca02311d5aafb
|
data/CHANGELOG.md
CHANGED
data/docs/architecture.md
CHANGED
|
@@ -412,6 +412,8 @@ RunningConfig 的两处受控 `send` 保留,用于私有策略绑定与 protec
|
|
|
412
412
|
|
|
413
413
|
连接、命令和操作失败统一经过 `Log#log_failure`。错误类型、错误码和阶段由 `Error::Metadata` 的固定词表过滤,Netdisco 报告复用同一规则;未知错误码不输出,未知阶段使用引擎当前阶段,未知类型归为 StandardError。异常正文仍先由会话脱敏,防止配置钩子把未登记的配置放进错误元数据后进入日志。
|
|
414
414
|
|
|
415
|
+
`Result`、`Error` 和 `UnderlyingError` 的 `inspect` 同样使用诊断词表,`PP` 沿用这些摘要。错误摘要不展开调用方提供的主机字段;原始错误字段仍可显式读取。`Error#to_s` 保持 Ruby 异常的消息语义,不替换为摘要。
|
|
416
|
+
|
|
415
417
|
操作后处理无论抛出异常还是返回失败 Result,都在敏感作用域退出前归一化错误,再记录完成事件;Result 的已完成步骤及配置内容保持原样。最终处理继承实际执行的命令及交互敏感性,包括准备钩子、替换命令和追加查询;只累计标记,不长期保留秘密,也不影响后续普通命令的日志。
|
|
416
418
|
|
|
417
419
|
业务执行与完成事件的异常范围分开:完成事件只尝试一次,观察者失败不能触发第二次相同通知。已有登录、命令或业务错误优先于失败日志的错误;脚本最终处理已生成的 Result.config 与 steps 不因日志收尾丢失。日志上下文刷新和传输接线恢复仍执行清理,但保留正在传播的主错误及 Interrupt。TFTP 的失败证据同样先决定错误码,再尝试记录失败事件。
|
|
@@ -36,8 +36,8 @@ module Net
|
|
|
36
36
|
copy
|
|
37
37
|
end
|
|
38
38
|
|
|
39
|
-
#
|
|
40
|
-
def inspect = "#<#{self.class} code=#{code.inspect} phase=#{phase.inspect}
|
|
39
|
+
# 摘要复用日志诊断词表;扩展钩子可提供原始元数据,但不能借摘要输出配置正文。
|
|
40
|
+
def inspect = "#<#{self.class} code=#{Metadata.code(code).inspect} phase=#{Metadata.phase(phase).inspect}>"
|
|
41
41
|
end
|
|
42
42
|
|
|
43
43
|
class ConnectionError < Error; end
|
|
@@ -89,8 +89,8 @@ module Net
|
|
|
89
89
|
freeze
|
|
90
90
|
end
|
|
91
91
|
|
|
92
|
-
#
|
|
93
|
-
def inspect = "#<#{self.class} type=#{type}>"
|
|
92
|
+
# 类型名称可能由外部异常类提供,摘要只展示共享词表接受的名称。
|
|
93
|
+
def inspect = "#<#{self.class} type=#{Error::Metadata.type(type)}>"
|
|
94
94
|
end
|
|
95
95
|
end
|
|
96
96
|
end
|
|
@@ -52,8 +52,8 @@ module Net
|
|
|
52
52
|
config || output
|
|
53
53
|
end
|
|
54
54
|
|
|
55
|
-
#
|
|
56
|
-
def inspect = "#<#{self.class} success=#{success?} steps=#{steps.size} code=#{error&.code.inspect}>"
|
|
55
|
+
# 摘要只展示受控错误码,不展开扩展钩子提供的原始元数据。
|
|
56
|
+
def inspect = "#<#{self.class} success=#{success?} steps=#{steps.size} code=#{Error::Metadata.code(error&.code).inspect}>"
|
|
57
57
|
end
|
|
58
58
|
end
|
|
59
59
|
end
|