heimdall_logbook 0.0.0 → 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +5 -0
- data/lib/generators/heimdall_logbook/install_generator.rb +23 -0
- data/lib/generators/heimdall_logbook/templates/migration.rb.tt +34 -0
- data/lib/heimdall_logbook.rb +8 -5
- data/lib/heimdall_logbook/logger.rb +33 -0
- data/lib/heimdall_logbook/request.rb +5 -0
- data/lib/heimdall_logbook/response.rb +5 -0
- data/lib/heimdall_logbook/version.rb +3 -0
- metadata +39 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 198159aab50a6d268f4c2c828caaccc6f67f5d2c92a306359aa7bedb604bdf87
|
4
|
+
data.tar.gz: ae73974e2e33df91b9aa0b031ee32b7876ab91825998e479fd38daa7fa168350
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 512e5ea93683995dafe58ba68e04522fb9a2dccb64525bf134cd747cd35a779cda04cee7f73051b18a55f50338c49026958cc099e51db421f1b0c849106e607b
|
7
|
+
data.tar.gz: ae32e0dae8654062aa00f883388ede158f6f1a2a502e43f8b701df2c5d1db914638ed20176da92681da3ea952452084435d0374ad8a82c675967601ef41d2d3c
|
data/README.md
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
require "rails/generators/active_record"
|
2
|
+
|
3
|
+
module HeimdallLogbook
|
4
|
+
module Generators
|
5
|
+
class InstallGenerator < ::Rails::Generators::Base
|
6
|
+
include Rails::Generators::Migration
|
7
|
+
source_root File.join(__dir__, "templates")
|
8
|
+
|
9
|
+
def copy_migration
|
10
|
+
migration_template "migration.rb", "db/migrate/create_heimdall_logbook.rb", migration_version: migration_version
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.next_migration_number(path)
|
14
|
+
next_migration_number = current_migration_number(path) + 1
|
15
|
+
ActiveRecord::Migration.next_migration_number(next_migration_number)
|
16
|
+
end
|
17
|
+
|
18
|
+
def migration_version
|
19
|
+
"[#{ActiveRecord::VERSION::MAJOR}.#{ActiveRecord::VERSION::MINOR}]"
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
class <%= migration_class_name %> < ActiveRecord::Migration<%= migration_version %>
|
2
|
+
def change
|
3
|
+
create_table :heimdall_logbook_request do |t|
|
4
|
+
t.string :request_method
|
5
|
+
t.string :params
|
6
|
+
t.string :ip
|
7
|
+
t.string :original_url
|
8
|
+
t.string :remote_ip
|
9
|
+
t.string :uuid
|
10
|
+
t.string :authorization
|
11
|
+
t.string :format
|
12
|
+
t.string :headers
|
13
|
+
t.string :port
|
14
|
+
t.string :protocol
|
15
|
+
t.string :query_string
|
16
|
+
t.string :domain
|
17
|
+
t.string :host
|
18
|
+
t.datetime :requested_at
|
19
|
+
end
|
20
|
+
|
21
|
+
create_table :heimdall_logbook_response do |t|
|
22
|
+
t.string :body
|
23
|
+
t.string :response_code
|
24
|
+
t.string :headers
|
25
|
+
t.string :content_type
|
26
|
+
t.string :status
|
27
|
+
t.string :location
|
28
|
+
t.string :message
|
29
|
+
t.string :charset
|
30
|
+
t.string :status
|
31
|
+
t.datetime :responded_at
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
data/lib/heimdall_logbook.rb
CHANGED
@@ -0,0 +1,33 @@
|
|
1
|
+
module HeimdallLogbook
|
2
|
+
def log_request
|
3
|
+
data = {requested_at: Time.zone.now}
|
4
|
+
request_fields.map{ |f| data[f] = request.send(f) }
|
5
|
+
HeimdallLogbook::Request.create(data)
|
6
|
+
true
|
7
|
+
end
|
8
|
+
|
9
|
+
|
10
|
+
def log_response
|
11
|
+
data = {responded_at: Time.zone.now}
|
12
|
+
response_fields.map{ |f| data[f] = response.send(f) }
|
13
|
+
HeimdallLogbook::Response.create(data)
|
14
|
+
true
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def request_fields
|
20
|
+
[
|
21
|
+
:request_method, :ip, :original_url, :remote_ip, :uuid,
|
22
|
+
:authorization, :format, :headers, :port, :protocol, :query_string,
|
23
|
+
:domain, :host
|
24
|
+
]
|
25
|
+
end
|
26
|
+
|
27
|
+
def response_fields
|
28
|
+
[
|
29
|
+
:body, :response_code, :headers, :content_type, :status,
|
30
|
+
:location, :message, :charset, :status
|
31
|
+
]
|
32
|
+
end
|
33
|
+
end
|
metadata
CHANGED
@@ -1,23 +1,58 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: heimdall_logbook
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Anuja Joshi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
12
|
-
dependencies:
|
11
|
+
date: 2019-04-28 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: railties
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '5'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '5'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: activerecord
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
13
41
|
description: A gem to log all incoming request and response
|
14
42
|
email: anuja.joshi443@gmail.com
|
15
43
|
executables: []
|
16
44
|
extensions: []
|
17
45
|
extra_rdoc_files: []
|
18
46
|
files:
|
47
|
+
- README.md
|
48
|
+
- lib/generators/heimdall_logbook/install_generator.rb
|
49
|
+
- lib/generators/heimdall_logbook/templates/migration.rb.tt
|
19
50
|
- lib/heimdall_logbook.rb
|
20
|
-
|
51
|
+
- lib/heimdall_logbook/logger.rb
|
52
|
+
- lib/heimdall_logbook/request.rb
|
53
|
+
- lib/heimdall_logbook/response.rb
|
54
|
+
- lib/heimdall_logbook/version.rb
|
55
|
+
homepage: https://github.com/anuja-joshi/heimdall_logbook
|
21
56
|
licenses:
|
22
57
|
- MIT
|
23
58
|
metadata: {}
|