Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
doodoocoder
prometheus
提交
5df757fd
P
prometheus
项目概览
doodoocoder
/
prometheus
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
prometheus
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
5df757fd
编写于
9月 28, 2018
作者:
S
Simon Pasquier
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
zookeeper: fix panic
Signed-off-by:
N
Simon Pasquier
<
spasquie@redhat.com
>
上级
c305ffaa
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
39 addition
and
7 deletion
+39
-7
discovery/manager.go
discovery/manager.go
+2
-2
discovery/zookeeper/zookeeper.go
discovery/zookeeper/zookeeper.go
+5
-5
discovery/zookeeper/zookeeper_test.go
discovery/zookeeper/zookeeper_test.go
+32
-0
未找到文件。
discovery/manager.go
浏览文件 @
5df757fd
...
...
@@ -304,12 +304,12 @@ func (m *Manager) registerProviders(cfg sd_config.ServiceDiscoveryConfig, setNam
}
for
_
,
c
:=
range
cfg
.
ServersetSDConfigs
{
add
(
c
,
func
()
(
Discoverer
,
error
)
{
return
zookeeper
.
NewServersetDiscovery
(
c
,
log
.
With
(
m
.
logger
,
"discovery"
,
"zookeeper"
))
,
nil
return
zookeeper
.
NewServersetDiscovery
(
c
,
log
.
With
(
m
.
logger
,
"discovery"
,
"zookeeper"
))
})
}
for
_
,
c
:=
range
cfg
.
NerveSDConfigs
{
add
(
c
,
func
()
(
Discoverer
,
error
)
{
return
zookeeper
.
NewNerveDiscovery
(
c
,
log
.
With
(
m
.
logger
,
"discovery"
,
"nerve"
))
,
nil
return
zookeeper
.
NewNerveDiscovery
(
c
,
log
.
With
(
m
.
logger
,
"discovery"
,
"nerve"
))
})
}
for
_
,
c
:=
range
cfg
.
EC2SDConfigs
{
...
...
discovery/zookeeper/zookeeper.go
浏览文件 @
5df757fd
...
...
@@ -115,12 +115,12 @@ type Discovery struct {
}
// NewNerveDiscovery returns a new Discovery for the given Nerve config.
func
NewNerveDiscovery
(
conf
*
NerveSDConfig
,
logger
log
.
Logger
)
*
Discovery
{
func
NewNerveDiscovery
(
conf
*
NerveSDConfig
,
logger
log
.
Logger
)
(
*
Discovery
,
error
)
{
return
NewDiscovery
(
conf
.
Servers
,
time
.
Duration
(
conf
.
Timeout
),
conf
.
Paths
,
logger
,
parseNerveMember
)
}
// NewServersetDiscovery returns a new Discovery for the given serverset config.
func
NewServersetDiscovery
(
conf
*
ServersetSDConfig
,
logger
log
.
Logger
)
*
Discovery
{
func
NewServersetDiscovery
(
conf
*
ServersetSDConfig
,
logger
log
.
Logger
)
(
*
Discovery
,
error
)
{
return
NewDiscovery
(
conf
.
Servers
,
time
.
Duration
(
conf
.
Timeout
),
conf
.
Paths
,
logger
,
parseServersetMember
)
}
...
...
@@ -132,7 +132,7 @@ func NewDiscovery(
paths
[]
string
,
logger
log
.
Logger
,
pf
func
(
data
[]
byte
,
path
string
)
(
model
.
LabelSet
,
error
),
)
*
Discovery
{
)
(
*
Discovery
,
error
)
{
if
logger
==
nil
{
logger
=
log
.
NewNopLogger
()
}
...
...
@@ -143,7 +143,7 @@ func NewDiscovery(
c
.
SetLogger
(
treecache
.
NewZookeeperLogger
(
logger
))
})
if
err
!=
nil
{
return
nil
return
nil
,
err
}
updates
:=
make
(
chan
treecache
.
ZookeeperTreeCacheEvent
)
sd
:=
&
Discovery
{
...
...
@@ -156,7 +156,7 @@ func NewDiscovery(
for
_
,
path
:=
range
paths
{
sd
.
treeCaches
=
append
(
sd
.
treeCaches
,
treecache
.
NewZookeeperTreeCache
(
conn
,
path
,
updates
,
logger
))
}
return
sd
return
sd
,
nil
}
// Run implements the Discoverer interface.
...
...
discovery/zookeeper/zookeeper_test.go
0 → 100644
浏览文件 @
5df757fd
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package
zookeeper
import
(
"testing"
"time"
"github.com/prometheus/common/model"
)
func
TestNewDiscoveryError
(
t
*
testing
.
T
)
{
_
,
err
:=
NewDiscovery
(
[]
string
{
"unreachable.test"
},
time
.
Second
,
[]
string
{
"/"
},
nil
,
func
(
data
[]
byte
,
path
string
)
(
model
.
LabelSet
,
error
)
{
return
nil
,
nil
})
if
err
==
nil
{
t
.
Fatalf
(
"expected error, got nil"
)
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录