Skip to content

Commit a38f4b1

Browse files
fix: ingestion with POST /lostream/{logstream} API
- works well in standalone server but fails in distributed withe error - method not allowed added the API POST /lostream/{logstream} in the scope of logstream apis for ingestor server - added a check to return error if stream does not exist
1 parent 9aaa2cc commit a38f4b1

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

server/src/handlers/http/ingest.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,9 @@ pub async fn post_event(req: HttpRequest, body: Bytes) -> Result<HttpResponse, P
182182
stream_name
183183
)));
184184
}
185+
if !STREAM_INFO.stream_exists(&stream_name) {
186+
return Err(PostError::StreamNotFound(stream_name));
187+
}
185188
flatten_and_push_logs(req, body, stream_name).await?;
186189
Ok(HttpResponse::Ok().finish())
187190
}

server/src/handlers/http/modal/ingest_server.rs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
use crate::analytics;
1919
use crate::banner;
2020
use crate::handlers::airplane;
21+
use crate::handlers::http::ingest;
2122
use crate::handlers::http::logstream;
2223
use crate::handlers::http::middleware::RouteExt;
2324
use crate::localcache::LocalCacheManager;
@@ -167,15 +168,17 @@ impl IngestServer {
167168
web::scope("/{logstream}")
168169
.service(
169170
web::resource("")
170-
.route(
171-
web::delete()
172-
.to(logstream::delete)
173-
.authorize_for_stream(Action::DeleteStream),
174-
)
171+
// PUT "/logstream/{logstream}" ==> Create a new log stream
175172
.route(
176173
web::put()
177174
.to(logstream::put_stream)
178175
.authorize_for_stream(Action::CreateStream),
176+
)
177+
// POST "/logstream/{logstream}" ==> Post logs to given log stream
178+
.route(
179+
web::post()
180+
.to(ingest::post_event)
181+
.authorize_for_stream(Action::Ingest),
179182
),
180183
)
181184
.service(

0 commit comments

Comments
 (0)