in client/Apache.ShenYu.Client/Registers/ShenyuZookeeperRegister.cs [141:155]
private async Task RegisterMetadataAsync(string contextPath, MetaDataRegisterDTO metadata)
{
string metadataNodeName = BuildMetadataNodeName(metadata);
string metaDataPath = RegisterPathConstants.BuildMetaDataParentPath(metadata.rpcType, contextPath);
string realNode = RegisterPathConstants.BuildRealNode(metaDataPath, metadataNodeName);
//create parent node
await _zkClient.CreateWithParentAsync(metaDataPath, null, ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
var metadataStr = JsonConvert.SerializeObject(metadata, Formatting.None, new JsonSerializerSettings
{
NullValueHandling = NullValueHandling.Ignore
});
await _zkClient.CreateOrUpdateAsync(realNode, Encoding.UTF8.GetBytes(metadataStr), ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
_logger.LogInformation("{} zookeeper client register metadata success: {}", metadata.rpcType, metadata);
}