Class: Fluent::GcloudPubSubInput
- Inherits:
-
Input
- Object
- Input
- Fluent::GcloudPubSubInput
show all
- Defined in:
- lib/fluent/plugin/in_gcloud_pubsub.rb
Defined Under Namespace
Classes: FailedParseError, RPCServlet
Instance Method Summary
collapse
Instance Method Details
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
# File 'lib/fluent/plugin/in_gcloud_pubsub.rb', line 107
def configure(conf)
super
@rpc_srv = nil
@rpc_thread = nil
@stop_pull = false
= if @tag_key.nil?
method(:static_tag)
else
method(:dynamic_tag)
end
@parser = Plugin.new_parser(@format)
@parser.configure(conf)
end
|
#desc(description) ⇒ Object
15
16
|
# File 'lib/fluent/plugin/in_gcloud_pubsub.rb', line 15
def desc(description)
end
|
#shutdown ⇒ Object
138
139
140
141
142
143
144
145
146
147
148
149
150
|
# File 'lib/fluent/plugin/in_gcloud_pubsub.rb', line 138
def shutdown
super
if @rpc_srv
@rpc_srv.shutdown
@rpc_srv = nil
end
if @rpc_thread
@rpc_thread.join
@rpc_thread = nil
end
@stop_subscribing = true
@subscribe_threads.each(&:join)
end
|
#start ⇒ Object
123
124
125
126
127
128
129
130
131
132
133
134
135
136
|
# File 'lib/fluent/plugin/in_gcloud_pubsub.rb', line 123
def start
super
start_rpc if @enable_rpc
@subscriber = Fluent::GcloudPubSub::Subscriber.new @project, @key, @topic, @subscription
log.debug "connected subscription:#{@subscription} in project #{@project}"
@emit_guard = Mutex.new
@stop_subscribing = false
@subscribe_threads = []
@pull_threads.times do
@subscribe_threads.push Thread.new(&method(:subscribe))
end
end
|
#start_pull ⇒ Object
157
158
159
160
|
# File 'lib/fluent/plugin/in_gcloud_pubsub.rb', line 157
def start_pull
@stop_pull = false
log.info "start pull from subscription:#{@subscription}"
end
|
#stop_pull ⇒ Object
152
153
154
155
|
# File 'lib/fluent/plugin/in_gcloud_pubsub.rb', line 152
def stop_pull
@stop_pull = true
log.info "stop pull from subscription:#{@subscription}"
end
|