mirror of
https://github.com/lloeki/minimal-rack/
synced 2025-12-06 05:04:40 +01:00
Make apps uniform
This commit is contained in:
parent
de989153e4
commit
cfba5211d0
6 changed files with 127 additions and 13 deletions
28
grape.rb
Normal file → Executable file
28
grape.rb
Normal file → Executable file
|
|
@ -1,3 +1,5 @@
|
|||
#!/usr/bin/env ruby
|
||||
|
||||
begin
|
||||
require "bundler/inline"
|
||||
rescue LoadError => e
|
||||
|
|
@ -21,15 +23,17 @@ end.tap do |m|
|
|||
end.first
|
||||
server = ARGV[1] || 'thin'
|
||||
|
||||
gems = match.fetch('gem', {})
|
||||
gemfile(true) do
|
||||
source "https://rubygems.org"
|
||||
|
||||
ruby match['ruby']
|
||||
|
||||
gem 'grape', "~> #{version}.0"
|
||||
gem server
|
||||
gem server unless gems.key?(server)
|
||||
gem 'ddtrace'
|
||||
|
||||
match.fetch('gem', []).each do |name, requirement|
|
||||
gems.each do |name, requirement|
|
||||
gem name, requirement
|
||||
end
|
||||
end
|
||||
|
|
@ -59,6 +63,9 @@ class API < Grape::API
|
|||
end
|
||||
|
||||
App = Rack::Builder.new do
|
||||
use Datadog::Tracing::Contrib::Rack::TraceMiddleware
|
||||
use Datadog::AppSec::Contrib::Rack::RequestMiddleware
|
||||
|
||||
# precompile routes
|
||||
API.compile!
|
||||
|
||||
|
|
@ -69,5 +76,22 @@ App = Rack::Builder.new do
|
|||
# run Rack::Cascade.new [Web, API]
|
||||
end
|
||||
|
||||
require 'ddtrace'
|
||||
|
||||
Datadog.configure do |c|
|
||||
c.diagnostics.debug = true
|
||||
|
||||
c.telemetry.enabled = true
|
||||
|
||||
c.remote.enabled = true
|
||||
|
||||
c.tracing.enabled = true
|
||||
c.tracing.instrument :rack
|
||||
c.tracing.instrument :grape
|
||||
|
||||
c.appsec.enabled = true
|
||||
c.appsec.instrument :rack
|
||||
end
|
||||
|
||||
Rack::Server.new(app: App, Host: '0.0.0.0', Port: 3000).start
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue