newrelic_rpm 3.1.0.beta5 → 3.1.0.djlogging

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of newrelic_rpm might be problematic. Click here for more details.

data/README.rdoc CHANGED
@@ -13,7 +13,7 @@ The New Relic Ruby Agent runs in one of two modes:
13
13
 
14
14
  Low overhead instrumentation that captures detailed information on
15
15
  your application running in production and transmits them to
16
- newrelic.com where you can monitor them in real time.
16
+ rpm.newrelic.com where you can monitor them in real time.
17
17
 
18
18
  ==== Developer Mode
19
19
 
@@ -39,7 +39,7 @@ Environments" section under "Getting Started".
39
39
 
40
40
  = Getting Started
41
41
 
42
- Install the Ruby Agent as a gem. If you are using Rails you can
42
+ Install the RPM agent as a gem. If you are using Rails you can
43
43
  install the gem as a plug-in--details below.
44
44
 
45
45
  gem install newrelic_rpm
data/cert/cacert.pem CHANGED
@@ -1,118 +1,151 @@
1
- GeoTrust Global CA
2
- ==================
3
- -----BEGIN CERTIFICATE-----
4
- MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVTMRYwFAYDVQQK
5
- Ew1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9iYWwgQ0EwHhcNMDIwNTIxMDQw
6
- MDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5j
7
- LjEbMBkGA1UEAxMSR2VvVHJ1c3QgR2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
8
- CgKCAQEA2swYYzD99BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjo
9
- BbdqfnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDviS2Aelet
10
- 8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU1XupGc1V3sjs0l44U+Vc
11
- T4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+bw8HHa8sHo9gOeL6NlMTOdReJivbPagU
12
- vTLrGAMoUgRx5aszPeE4uwc2hGKceeoWMPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTAD
13
- AQH/MB0GA1UdDgQWBBTAephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVk
14
- DBF9qn1luMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKInZ57Q
15
- zxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfStQWVYrmm3ok9Nns4
16
- d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcFPseKUgzbFbS9bZvlxrFUaKnjaZC2
17
- mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Unhw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6p
18
- XE0zX5IJL4hmXXeXxx12E6nV5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvm
19
- Mw==
20
- -----END CERTIFICATE-----
21
-
22
- GeoTrust Global CA 2
23
- ====================
24
- -----BEGIN CERTIFICATE-----
25
- MIIDZjCCAk6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN
26
- R2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvYmFsIENBIDIwHhcNMDQwMzA0MDUw
27
- MDAwWhcNMTkwMzA0MDUwMDAwWjBEMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5j
28
- LjEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvYmFsIENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
29
- ggEKAoIBAQDvPE1APRDfO1MA4Wf+lGAVPoWI8YkNkMgoI5kF6CsgncbzYEbYwbLVjDHZ3CB5JIG/
30
- NTL8Y2nbsSpr7iFY8gjpeMtvy/wWUsiRxP89c96xPqfCfWbB9X5SJBri1WeR0IIQ13hLTytCOb1k
31
- LUCgsBDTOEhGiKEMuzozKmKY+wCdE1l/bztyqu6mD4b5BWHqZ38MN5aL5mkWRxHCJ1kDs6ZgwiFA
32
- Vvqgx306E+PsV8ez1q6diYD3Aecs9pYrEw15LNnA5IZ7S4wMcoKK+xfNAGw6EzywhIdLFnopsk/b
33
- HdQL82Y3vdj2V7teJHq4PIu5+pIaGoSe2HSPqht/XvT+RSIhAgMBAAGjYzBhMA8GA1UdEwEB/wQF
34
- MAMBAf8wHQYDVR0OBBYEFHE4NvICMVNHK266ZUapEBVYIAUJMB8GA1UdIwQYMBaAFHE4NvICMVNH
35
- K266ZUapEBVYIAUJMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQUFAAOCAQEAA/e1K6tdEPx7
36
- srJerJsOflN4WT5CBP51o62sgU7XAotexC3IUnbHLB/8gTKY0UvGkpMzNTEv/NgdRN3ggX+d6Yvh
37
- ZJFiCzkIjKx0nVnZellSlxG5FntvRdOW2TF9AjYPnDtuzywNA0ZF66D0f0hExghAzN4bcLUprbqL
38
- OzRldRtxIR0sFAqwlpW41uryZfspuk/qkZN0abby/+Ea0AzRdoXLiiW9l14sbxWZJue2Kf8i7MkC
39
- x1YAzUm5s2x7UwQa4qjJqhIFI8LO57sEAszAR6LkxCkvW0VXiVHuPOtSCP8HNR6fNWpHSlaY0VqF
40
- H4z1Ir+rzoPz4iIprn2DQKi6bA==
41
- -----END CERTIFICATE-----
42
-
43
- GeoTrust Universal CA
44
- =====================
45
- -----BEGIN CERTIFICATE-----
46
- MIIFaDCCA1CgAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN
47
- R2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxMVR2VvVHJ1c3QgVW5pdmVyc2FsIENBMB4XDTA0MDMwNDA1
48
- MDAwMFoXDTI5MDMwNDA1MDAwMFowRTELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IElu
49
- Yy4xHjAcBgNVBAMTFUdlb1RydXN0IFVuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIP
50
- ADCCAgoCggIBAKYVVaCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG0y/YckUHUWCq8YdgNY96xCcOq9t
51
- JPi8cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0iN430SppyZj6tlcDgFgDgEB8rMQ7XlFTTQjOgNB0e
52
- RXbdT8oYN+yFFXoZCPzVx5zw8qkuEKmS5j1YPakWaDwvdSEYfyh3peFhF7em6fgemdtzbvQKoiFs
53
- 7tqqhZJmr/Z6a4LauiIINQ/PQvE1+mrufislzDoR5G2vc7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc7d
54
- 8Lsrlh/eezJS/R27tQahsiFepdaVaH/wmZ7cRQg+59IJDTWU3YBOU5fXtQlEIGQWFwMCTFMNaN7V
55
- qnJNk22CDtucvc+081xdVHppCZbW2xHBjXWotM85yM48vCR85mLK4b19p71XZQvk/iXttmkQ3Cga
56
- Rr0BHdCXteGYO8A3ZNY9lO4L4fUorgtWv3GLIylBjobFS1J72HGrH4oVpjuDWtdYAVHGTEHZf9hB
57
- Z3KiKN9gg6meyHv8U3NyWfWTehd2Ds735VzZC1U0oqpbtWpU5xPKV+yXbfReBi9Fi1jUIxaS5BZu
58
- KGNZMN9QAZxjiRqf2xeUgnA3wySemkfWWspOqGmJch+RbNt+nhutxx9z3SxPGWX9f5NAEC7S8O08
59
- ni4oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNq7LqqwDLiIJlF0
60
- XG0D08DYj3rWMB8GA1UdIwQYMBaAFNq7LqqwDLiIJlF0XG0D08DYj3rWMA4GA1UdDwEB/wQEAwIB
61
- hjANBgkqhkiG9w0BAQUFAAOCAgEAMXjmx7XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZIRc
62
- aanQmjg8+uUfNeVE44B5lGiku8SfPeE0zTBGi1QrlaXv9z+ZhP015s8xxtxqv6fXIwjhmF7DWgh2
63
- qaavdy+3YL1ERmrvl/9zlcGO6JP7/TG37FcREUWbMPEaiDnBTzynANXH/KttgCJwpQzgXQQpAvvL
64
- oJHRfNbDflDVnVi+QTjruXU8FdmbyUqDWcDaU/0zuzYYm4UPFd3uLax2k7nZAY1IEKj79TiG8dsK
65
- xr2EoyNB3tZ3b4XUhRxQ4K5RirqNPnbiucon8l+f725ZDQbYKxek0nxru18UGkiPGkzns0ccjkxF
66
- KyDuSN/n3QmOGKjaQI2SJhFTYXNd673nxE0pN2HrrDktZy4W1vUAg4WhzH92xH3kt0tm7wNFYGm2
67
- DFKWkoRepqO1pD4r2czYG0eq8kTaT/kD6PAUyz/zg97QwVTjt+gKN02LIFkDMBmhLMi9ER/frslK
68
- xfMnZmaGrGiR/9nmUxwPi1xpZQomyB40w11Re9epnAahNt3ViZS82eQtDF4JbAiXfKM9fJP/P6EU
69
- p8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvSOPOrg/SfuvmbJxPgWp6ZKy7PtXny3YuxadIwVyQD8vI
70
- P/rmMuGNG2+k5o7Y+SlIis5z/iw=
71
- -----END CERTIFICATE-----
72
-
73
- GeoTrust Universal CA 2
74
- =======================
75
- -----BEGIN CERTIFICATE-----
76
- MIIFbDCCA1SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN
77
- R2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwHhcNMDQwMzA0
78
- MDUwMDAwWhcNMjkwMzA0MDUwMDAwWjBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3Qg
79
- SW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwggIiMA0GCSqGSIb3DQEBAQUA
80
- A4ICDwAwggIKAoICAQCzVFLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtXr0om/Nj1XqduGdt0
81
- DE81WzILAePb63p3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiuFJnSCegx2oG9NzkEtoBUGFF+3Qs17
82
- j1hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BNMZcyfwqph/Lq9O64ceJHdqXbboW0W63MOhBW9Wjo8Q
83
- JqVJwy7XQYci4E+GymC16qFjwAGXEHm9ADwSbSsVsaxLse4YuU6W3Nx2/zu+z18DwPw76L5GG//a
84
- QMJS9/7jOvdqdzXQ2o3rXhhqMcceujwbKNZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtgrrY6slWvKk2
85
- WP0+GfPtDCapkzj4T8FdIgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4zs1meaj0gVbi0IMJR1FbUGrP
86
- 20gaXT73y/Zl92zxlfgCOzJWgjl6W70viRu/obTo/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZRthAAn
87
- ZqzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHsu3/mjX/hVTK7URDrBs8FmtISgocQIgfksILAAX/8sgC
88
- SqSqqcyZlpwvWOB94b67B9xfBHJcMTTD7F8t4D1kkCLm0ey4Lt1ZrtmhN79UNdxzMk+MBB4zsslG
89
- 8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBR281Xh+qQ2
90
- +/CfXGJx7Tz0RzgQKzAfBgNVHSMEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAOBgNVHQ8BAf8E
91
- BAMCAYYwDQYJKoZIhvcNAQEFBQADggIBAGbBxiPz2eAubl/oz66wsCVNK/g7WJtAJDday6sWSf+z
92
- dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQL1EuxBRa3ugZ
93
- 4T7GzKQp5y6EqgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRgrFg5fNuH8KrUwJM/gYwx7WBr+
94
- mbpCErGR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GHSoag/HtPQTxORb7QrSpJdMKu0vbBKJPfEncKpq
95
- A1Ihn0CoZ1Dy81of398j9tx4TuaYT1U6U+Pv8vSfx3zYWK8pIpe44L2RLrB27FcRz+8pRPPphXpg
96
- Y+RdM4kX2TGq2tbzGDVyz4crL2MjhF2EjD9XoIj8mZEoJmmZ1I+XRL6O1UixpCgp8RW04eWe3fiP
97
- pm8m1wk8OhwRDqZsN/etRIcsKMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M2Basx7InQJJVOCiNUW7d
98
- FGdTbHFcJoRNdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK34B7vCAas+YWH6aLcr34YEoP9VhdBLtUp
99
- gn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwXQMAJKOSLakhT2+zNVVXxxvjpoixMptEm
100
- X36vWkzaH6byHCx+rgIW0lbQL1dTR+iS
101
- -----END CERTIFICATE-----
102
- -----BEGIN CERTIFICATE-----
103
- MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJVUzEQMA4GA1UE
104
- ChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5
105
- MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoT
106
- B0VxdWlmYXgxLTArBgNVBAsTJEVxdWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCB
107
- nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPR
108
- fM6fBeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+AcJkVV5MW
109
- 8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kCAwEAAaOCAQkwggEFMHAG
110
- A1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UE
111
- CxMkRXF1aWZheCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoG
112
- A1UdEAQTMBGBDzIwMTgwODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvS
113
- spXXR9gjIBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQFMAMB
114
- Af8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUAA4GBAFjOKer89961
115
- zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y7qj/WsjTVbJmcVfewCHrPSqnI0kB
116
- BIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee95
117
- 70+sB3c4
118
- -----END CERTIFICATE-----
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVT
3
+ MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i
4
+ YWwgQ0EwHhcNMDIwNTIxMDQwMDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQG
5
+ EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEbMBkGA1UEAxMSR2VvVHJ1c3Qg
6
+ R2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2swYYzD9
7
+ 9BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjoBbdq
8
+ fnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDv
9
+ iS2Aelet8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU
10
+ 1XupGc1V3sjs0l44U+VcT4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+
11
+ bw8HHa8sHo9gOeL6NlMTOdReJivbPagUvTLrGAMoUgRx5aszPeE4uwc2hGKceeoW
12
+ MPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTA
13
+ ephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVkDBF9qn1l
14
+ uMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKIn
15
+ Z57QzxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfS
16
+ tQWVYrmm3ok9Nns4d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcF
17
+ PseKUgzbFbS9bZvlxrFUaKnjaZC2mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Un
18
+ hw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6pXE0zX5IJL4hmXXeXxx12E6nV
19
+ 5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvmMw==
20
+ -----END CERTIFICATE-----
21
+ -----BEGIN CERTIFICATE-----
22
+ MIID2TCCAsGgAwIBAgIDAjbQMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVT
23
+ MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i
24
+ YWwgQ0EwHhcNMTAwMjE5MjIzOTI2WhcNMjAwMjE4MjIzOTI2WjBAMQswCQYDVQQG
25
+ EwJVUzEXMBUGA1UEChMOR2VvVHJ1c3QsIEluYy4xGDAWBgNVBAMTD0dlb1RydXN0
26
+ IFNTTCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJCzgMHk5Uat
27
+ cGA9uuUU3Z6KXot1WubKbUGlI+g5hSZ6p1V3mkihkn46HhrxJ6ujTDnMyz1Hr4Gu
28
+ FmpcN+9FQf37mpc8oEOdxt8XIdGKolbCA0mEEoE+yQpUYGa5jFTk+eb5lPHgX3UR
29
+ 8im55IaisYmtph6DKWOy8FQchQt65+EuDa+kvc3nsVrXjAVaDktzKIt1XTTYdwvh
30
+ dGLicTBi2LyKBeUxY0pUiWozeKdOVSQdl+8a5BLGDzAYtDRN4dgjOyFbLTAZJQ50
31
+ 96QhS6CkIMlszZhWwPKoXz4mdaAN+DaIiixafWcwqQ/RmXAueOFRJq9VeiS+jDkN
32
+ d53eAsMMvR8CAwEAAaOB2TCB1jAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFEJ5
33
+ VBthzVUrPmPVPEhX9Z/7Rc5KMB8GA1UdIwQYMBaAFMB6mGiNifurBWQMEX2qfWW4
34
+ ysxOMBIGA1UdEwEB/wQIMAYBAf8CAQAwOgYDVR0fBDMwMTAvoC2gK4YpaHR0cDov
35
+ L2NybC5nZW90cnVzdC5jb20vY3Jscy9ndGdsb2JhbC5jcmwwNAYIKwYBBQUHAQEE
36
+ KDAmMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5nZW90cnVzdC5jb20wDQYJKoZI
37
+ hvcNAQEFBQADggEBANTvU4ToGr2hiwTAqfVfoRB4RV2yV2pOJMtlTjGXkZrUJPji
38
+ J2ZwMZzBYlQG55cdOprApClICq8kx6jEmlTBfEx4TCtoLF0XplR4TEbigMMfOHES
39
+ 0tdT41SFULgCy+5jOvhWiU1Vuy7AyBh3hjELC3DwfjWDpCoTZFZnNF0WX3OsewYk
40
+ 2k9QbSqr0E1TQcKOu3EDSSmGGM8hQkx0YlEVxW+o78Qn5Rsz3VqI138S0adhJR/V
41
+ 4NwdzxoQ2KDLX4z6DOW/cf/lXUQdpj6HR/oaToODEj+IZpWYeZqF6wJHzSXj8gYE
42
+ TpnKXKBuervdo5AaRTPvvz7SBMS24CqFZUE+ENQ=
43
+ -----END CERTIFICATE-----
44
+ -----BEGIN CERTIFICATE-----
45
+ MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh
46
+ MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE
47
+ YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3
48
+ MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo
49
+ ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg
50
+ MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN
51
+ ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA
52
+ PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w
53
+ wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi
54
+ EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY
55
+ avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+
56
+ YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE
57
+ sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h
58
+ /t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5
59
+ IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj
60
+ YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD
61
+ ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy
62
+ OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P
63
+ TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ
64
+ HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER
65
+ dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf
66
+ ReYNnyicsbkqWletNw+vHX/bvZ8=
67
+ -----END CERTIFICATE-----
68
+ -----BEGIN CERTIFICATE-----
69
+ MIIE3jCCA8agAwIBAgICAwEwDQYJKoZIhvcNAQEFBQAwYzELMAkGA1UEBhMCVVMx
70
+ ITAfBgNVBAoTGFRoZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28g
71
+ RGFkZHkgQ2xhc3MgMiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjExMTYw
72
+ MTU0MzdaFw0yNjExMTYwMTU0MzdaMIHKMQswCQYDVQQGEwJVUzEQMA4GA1UECBMH
73
+ QXJpem9uYTETMBEGA1UEBxMKU2NvdHRzZGFsZTEaMBgGA1UEChMRR29EYWRkeS5j
74
+ b20sIEluYy4xMzAxBgNVBAsTKmh0dHA6Ly9jZXJ0aWZpY2F0ZXMuZ29kYWRkeS5j
75
+ b20vcmVwb3NpdG9yeTEwMC4GA1UEAxMnR28gRGFkZHkgU2VjdXJlIENlcnRpZmlj
76
+ YXRpb24gQXV0aG9yaXR5MREwDwYDVQQFEwgwNzk2OTI4NzCCASIwDQYJKoZIhvcN
77
+ AQEBBQADggEPADCCAQoCggEBAMQt1RWMnCZM7DI161+4WQFapmGBWTtwY6vj3D3H
78
+ KrjJM9N55DrtPDAjhI6zMBS2sofDPZVUBJ7fmd0LJR4h3mUpfjWoqVTr9vcyOdQm
79
+ VZWt7/v+WIbXnvQAjYwqDL1CBM6nPwT27oDyqu9SoWlm2r4arV3aLGbqGmu75RpR
80
+ SgAvSMeYddi5Kcju+GZtCpyz8/x4fKL4o/K1w/O5epHBp+YlLpyo7RJlbmr2EkRT
81
+ cDCVw5wrWCs9CHRK8r5RsL+H0EwnWGu1NcWdrxcx+AuP7q2BNgWJCJjPOq8lh8BJ
82
+ 6qf9Z/dFjpfMFDniNoW1fho3/Rb2cRGadDAW/hOUoz+EDU8CAwEAAaOCATIwggEu
83
+ MB0GA1UdDgQWBBT9rGEyk2xF1uLuhV+auud2mWjM5zAfBgNVHSMEGDAWgBTSxLDS
84
+ kdRMEXGzYcs9of7dqGrU4zASBgNVHRMBAf8ECDAGAQH/AgEAMDMGCCsGAQUFBwEB
85
+ BCcwJTAjBggrBgEFBQcwAYYXaHR0cDovL29jc3AuZ29kYWRkeS5jb20wRgYDVR0f
86
+ BD8wPTA7oDmgN4Y1aHR0cDovL2NlcnRpZmljYXRlcy5nb2RhZGR5LmNvbS9yZXBv
87
+ c2l0b3J5L2dkcm9vdC5jcmwwSwYDVR0gBEQwQjBABgRVHSAAMDgwNgYIKwYBBQUH
88
+ AgEWKmh0dHA6Ly9jZXJ0aWZpY2F0ZXMuZ29kYWRkeS5jb20vcmVwb3NpdG9yeTAO
89
+ BgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQEFBQADggEBANKGwOy9+aG2Z+5mC6IG
90
+ OgRQjhVyrEp0lVPLN8tESe8HkGsz2ZbwlFalEzAFPIUyIXvJxwqoJKSQ3kbTJSMU
91
+ A2fCENZvD117esyfxVgqwcSeIaha86ykRvOe5GPLL5CkKSkB2XIsKd83ASe8T+5o
92
+ 0yGPwLPk9Qnt0hCqU7S+8MxZC9Y7lhyVJEnfzuz9p0iRFEUOOjZv2kWzRaJBydTX
93
+ RE4+uXR21aITVSzGh6O1mawGhId/dQb8vxRMDsxuxN89txJx9OjxUUAiKEngHUuH
94
+ qDTMBqLdElrRhjZkAzVvb3du6/KFUJheqwNTrZEjYx8WnM25sgVjOuH0aBsXBTWV
95
+ U+4=
96
+ -----END CERTIFICATE-----
97
+ -----BEGIN CERTIFICATE-----
98
+ MIIE1TCCA72gAwIBAgIEQ2DfKzANBgkqhkiG9w0BAQUFADCByjELMAkGA1UEBhMC
99
+ VVMxEDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNV
100
+ BAoTEUdvRGFkZHkuY29tLCBJbmMuMTMwMQYDVQQLEypodHRwOi8vY2VydGlmaWNh
101
+ dGVzLmdvZGFkZHkuY29tL3JlcG9zaXRvcnkxMDAuBgNVBAMTJ0dvIERhZGR5IFNl
102
+ Y3VyZSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTERMA8GA1UEBRMIMDc5NjkyODcw
103
+ HhcNMDkwMzE4MjEzMjI5WhcNMTEwNDMwMDIyNzExWjBVMRcwFQYDVQQKEw4qLm5l
104
+ d3JlbGljLmNvbTEhMB8GA1UECxMYRG9tYWluIENvbnRyb2wgVmFsaWRhdGVkMRcw
105
+ FQYDVQQDEw4qLm5ld3JlbGljLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkC
106
+ gYEAuBCbjfFuWoIqosv2f9vofqeqZaCsKBWKs799M62BRJgatXM0sPR8T5FJAAYe
107
+ /N5qX3Ei1paM9g8/VKM+w4fpKB9BceE7wwl77vFltgLz0o/IejLodcMDd9Inmt2P
108
+ ax8VLkCxQup+21H3RIYRSyi4TKJeghq+MuDiYKksYZ65YnkCAwEAAaOCAbkwggG1
109
+ MA8GA1UdEwEB/wQFMAMBAQAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC
110
+ MA4GA1UdDwEB/wQEAwIFoDAyBgNVHR8EKzApMCegJaAjhiFodHRwOi8vY3JsLmdv
111
+ ZGFkZHkuY29tL2dkczEtMy5jcmwwUwYDVR0gBEwwSjBIBgtghkgBhv1tAQcXATA5
112
+ MDcGCCsGAQUFBwIBFitodHRwOi8vY2VydGlmaWNhdGVzLmdvZGFkZHkuY29tL3Jl
113
+ cG9zaXRvcnkvMIGABggrBgEFBQcBAQR0MHIwJAYIKwYBBQUHMAGGGGh0dHA6Ly9v
114
+ Y3NwLmdvZGFkZHkuY29tLzBKBggrBgEFBQcwAoY+aHR0cDovL2NlcnRpZmljYXRl
115
+ cy5nb2RhZGR5LmNvbS9yZXBvc2l0b3J5L2dkX2ludGVybWVkaWF0ZS5jcnQwHwYD
116
+ VR0jBBgwFoAU/axhMpNsRdbi7oVfmrrndplozOcwJwYDVR0RBCAwHoIOKi5uZXdy
117
+ ZWxpYy5jb22CDG5ld3JlbGljLmNvbTAdBgNVHQ4EFgQUzLBbBJBQ6RF/UpvIuU0H
118
+ C/cE9FgwDQYJKoZIhvcNAQEFBQADggEBAL4q2VVUm/0Zp08zP95dTMDOnoXd+9gX
119
+ OyVhV6O4PXNdlsj7uvpZhtOCdStzIoZPEIYtvjgVfcNhyOg2T0is8u5icDG1uQgq
120
+ dA/gaZ7agWtQlaDfHRHigfDiMF3lQ6by1L+C1i7P+lhEQWGISEAOGisLGW1aFlbs
121
+ ZjJZIIUiej+4QSBAbKsAo72gQ9DOQdrxUCZJoQdQhkjjENg5BbRcxW99M+zykY5o
122
+ HBiXHtXvgcyfZXASfgiW3nSM64QxXs9vd4gfmFNF5wnVHCSOJs5r/NRp9SIciUTq
123
+ YmYKdpFyzxGxZUduYo8z1nGHmPedTxW+RvBbE+gNUtGxhauv8H+J/rc=
124
+ -----END CERTIFICATE-----
125
+ -----BEGIN CERTIFICATE-----
126
+ MIIEmTCCA4GgAwIBAgICdPYwDQYJKoZIhvcNAQEFBQAwQDELMAkGA1UEBhMCVVMx
127
+ FzAVBgNVBAoTDkdlb1RydXN0LCBJbmMuMRgwFgYDVQQDEw9HZW9UcnVzdCBTU0wg
128
+ Q0EwHhcNMTEwMzExMTExNTEzWhcNMTMwMzEzMDUyMjU1WjCBrDEpMCcGA1UEBRMg
129
+ M0VrS1FSNFN5Vk5SZjQtdkJaMUZMUEhENnZWNzhLdUoxCzAJBgNVBAYTAlVTMRMw
130
+ EQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMRYwFAYD
131
+ VQQKEw1OZXcgUmVsaWMgSW5jMRQwEgYDVQQLEwtFbmdpbmVlcmluZzEXMBUGA1UE
132
+ AwwOKi5uZXdyZWxpYy5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
133
+ AQC4eLGubSgkxRrusVqnI7FmWxp2cS0hjeBFdzjYF3heRWzyerrP74UjbW/3lDV2
134
+ L7mKD6AKL51wPBC+xRtVXI+8SoWLyaO3k9pJEXIiNw8RVl9s9CAiiam3KCgFw+U1
135
+ B8RiZm1xYlbxGAb6XoxJXOx3Sld61ko5ZU/tV5Gs75Vnyt5RxLINoMKl8Dk0C2Z/
136
+ piS8pzoePgTJHEoL/aU9bnCyv2BxdhfIpvBVzvpr79JJ2mo/6gr/ODZWBLIflVPj
137
+ 4D+VE4so/Nt5pkTelRsyX8IL/xYb9lIQ+FJqjXksFy+NaR77afNUug3wUXwpkBjc
138
+ KF4TlxTXHadUUURJAyZN/zrlAgMBAAGjggEuMIIBKjAfBgNVHSMEGDAWgBRCeVQb
139
+ Yc1VKz5j1TxIV/Wf+0XOSjAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
140
+ BQUHAwEGCCsGAQUFBwMCMCcGA1UdEQQgMB6CDioubmV3cmVsaWMuY29tggxuZXdy
141
+ ZWxpYy5jb20wPQYDVR0fBDYwNDAyoDCgLoYsaHR0cDovL2d0c3NsLWNybC5nZW90
142
+ cnVzdC5jb20vY3Jscy9ndHNzbC5jcmwwHQYDVR0OBBYEFIGySnbWmSQHcvbson/A
143
+ hDGIuIamMAwGA1UdEwEB/wQCMAAwQwYIKwYBBQUHAQEENzA1MDMGCCsGAQUFBzAC
144
+ hidodHRwOi8vZ3Rzc2wtYWlhLmdlb3RydXN0LmNvbS9ndHNzbC5jcnQwDQYJKoZI
145
+ hvcNAQEFBQADggEBAHuO8i5vPkZfPhT1a9GCn49J8Ada+faVpGnZ0nE3ufqhD52d
146
+ dZaVyUgft+2s+ksxIGjCwl3X+jeLfOL+dqqt77E1JRAskrCIfFHeQDS/7P6Ch3pE
147
+ zm8uTkMARuRARSi+O0jwTfYH5ApRb7eumgtz8sELg94yPCAKeegrK0zqhNGF6Bnp
148
+ tuSN36tUDtZb1Xy+sz6RzNpQJS/b1KH7e+jbEudctO8b6mP8/5bGoDcWQqPn4YWd
149
+ UAkOShAeRtdc0jsn62VlqDEfQQ16CsmD1Hoh9Mxhwj9rSqwpDSc9f0isJ6xypDhM
150
+ 4cNwyeIvhj++8Ir5LdCmWGLcUtNqUs4jK36ph7k=
151
+ -----END CERTIFICATE-----
@@ -2,15 +2,20 @@ require 'new_relic/agent/instrumentation/controller_instrumentation'
2
2
 
3
3
  DependencyDetection.defer do
4
4
  depends_on do
5
- !NewRelic::Control.instance['disable_dj']
5
+ value = !NewRelic::Control.instance['disable_dj']
6
+ NewRelic::Control.instance.log.info('Delayed Job instrumentation disabled, edit the "disable_dj" parameter in your newrelic.yml to change this') unless value
7
+ value
6
8
  end
7
9
 
8
10
  depends_on do
9
- defined?(::Delayed) && defined?(::Delayed::Job)
11
+ value = defined?(::Delayed) && defined?(::Delayed::Job)
12
+ NewRelic::Control.instance.log.info('Delayed Job not defined, skipping instrumentation') unless value
13
+ value
10
14
  end
11
15
 
12
16
  executes do
13
17
  Delayed::Job.class_eval do
18
+ NewRelic::Control.instance.log.info('Installing controller instrumentation into Delayed::Job')
14
19
  include NewRelic::Agent::Instrumentation::ControllerInstrumentation
15
20
  if self.instance_methods.include?('name')
16
21
  add_transaction_tracer "invoke_job", :category => 'OtherTransaction/DelayedJob', :path => '#{self.name}'
@@ -22,8 +27,10 @@ DependencyDetection.defer do
22
27
 
23
28
  executes do
24
29
  Delayed::Job.instance_eval do
30
+ NewRelic::Control.instance.log.info('Attempting to install after_fork hook for Delayed Job')
25
31
  if self.respond_to?('after_fork')
26
32
  if method_defined?(:after_fork)
33
+ NewRelic::Control.instance.log.info('Delayed::Job.after_fork is defined, aliasing our method and calling the old one')
27
34
  def after_fork_with_newrelic
28
35
  NewRelic::Agent.after_fork(:force_reconnect => true)
29
36
  after_fork_without_newrelic
@@ -32,6 +39,7 @@ DependencyDetection.defer do
32
39
  alias_method :after_fork_without_newrelic, :after_fork
33
40
  alias_method :after_fork, :after_fork_with_newrelic
34
41
  else
42
+ NewRelic::Control.instance.log.info('Delayed::Job.after_fork is not defined, defining our after_fork hook')
35
43
  def after_fork
36
44
  NewRelic::Agent.after_fork(:force_reconnect => true)
37
45
  super
@@ -153,12 +153,6 @@ module Agent
153
153
  elapsed = (gc_time - @last_gc_timestamp).to_f
154
154
  @last_gc_timestamp = gc_time
155
155
  @last_gc_count = gc_collections
156
-
157
- if defined?(GC::Profiler)
158
- GC::Profiler.clear
159
- @last_gc_timestamp = 0
160
- end
161
-
162
156
  if num_calls > 0
163
157
  # µs to seconds
164
158
  elapsed = elapsed / 1000000.0
@@ -9,7 +9,7 @@ module NewRelic
9
9
  # If we try to get a log before one has been set up, return a stdout log
10
10
  unless @log
11
11
  l = Logger.new(STDOUT)
12
- l.level = Logger::INFO
12
+ l.level = Logger::DEBUG
13
13
  return l
14
14
  end
15
15
  @log
@@ -17,16 +17,8 @@ module NewRelic
17
17
 
18
18
  private
19
19
 
20
- def open_arguments
21
- if defined?(Encoding)
22
- [file_path, File::RDWR | File::CREAT, {:internal_encoding => nil}]
23
- else
24
- [file_path, File::RDWR | File::CREAT]
25
- end
26
- end
27
-
28
20
  def with_locked_store
29
- File.open(*open_arguments) do |f|
21
+ File.open(file_path, File::RDWR | File::CREAT) do |f|
30
22
  f.flock(File::LOCK_EX)
31
23
  begin
32
24
  yield(f)
@@ -35,8 +27,7 @@ module NewRelic
35
27
  end
36
28
  end
37
29
  rescue Exception => e
38
- NewRelic::Control.instance.log.error("Error serializing data to disk: #{e.inspect}")
39
- NewRelic::Control.instance.log.debug(e.backtrace.split("\n"))
30
+ puts e.inspect
40
31
  end
41
32
 
42
33
  def get_data_from_file(f)
@@ -13,23 +13,30 @@ end
13
13
 
14
14
  DependencyDetection.defer do
15
15
  depends_on do
16
- defined?(::Delayed) && defined?(::Delayed::Worker)
16
+ NewRelic::Control.instance.log.info("Attempting to install Delayed Job initialization hook")
17
+ value = defined?(::Delayed) && defined?(::Delayed::Worker)
18
+ NewRelic::Control.instance.log.info("Delayed Job and Delayed Worker instrumentation #{value ? 'is' : 'is not'} being installed")
17
19
  end
18
20
 
19
21
  executes do
20
22
  Delayed::Worker.class_eval do
21
23
  def initialize_with_new_relic(*args)
22
- initialize_without_new_relic(*args)
24
+ NewRelic::Control.instance.log.info("Initializing Delayed Job with New Relic")
25
+ value = initialize_without_new_relic(*args)
26
+ NewRelic::Control.instance.log.info("Beginning New Relic Delayed Job initialization")
23
27
  worker_name = case
24
28
  when self.respond_to?(:name) then self.name
25
29
  when self.class.respond_to?(:default_name) then self.class.default_name
26
30
  end
27
31
  dispatcher_instance_id = worker_name || "host:#{Socket.gethostname} pid:#{Process.pid}" rescue "pid:#{Process.pid}"
28
- say "New Relic Ruby Agent Monitoring DJ worker #{dispatcher_instance_id}"
32
+ log_message = "New Relic Monitoring DJ worker #{dispatcher_instance_id}"
33
+ NewRelic::Control.instance.log.info(log_message)
34
+ say log_message
29
35
  NewRelic::DelayedJobInjection.worker_name = worker_name
30
36
  NewRelic::Control.instance.init_plugin :dispatcher => :delayed_job, :dispatcher_instance_id => dispatcher_instance_id
31
37
  end
32
-
38
+
39
+ NewRelic::Control.instance.log.debug("Aliasing initialize method to hook our instrumentation into Delayed::Worker#initialize")
33
40
  alias initialize_without_new_relic initialize
34
41
  alias initialize initialize_with_new_relic
35
42
  end
@@ -224,11 +224,6 @@ module NewRelic
224
224
  @sample_controller_name = metric_parser.controller_name
225
225
  @sample_action_name = metric_parser.action_name
226
226
 
227
- @sql_segments = @sample.sql_segments
228
- if params['d']
229
- @sql_segments.sort!{|a,b| b.duration <=> a.duration }
230
- end
231
-
232
227
  render(:show_sample)
233
228
  end
234
229
 
@@ -4,7 +4,7 @@ module NewRelic
4
4
  MAJOR = 3
5
5
  MINOR = 1
6
6
  TINY = 0
7
- BUILD = 'beta5' #'0' # Set to nil for a release, 'beta1', 'alpha', etc for prerelease builds
7
+ BUILD = 'djlogging' #'0' # Set to nil for a release, 'beta1', 'alpha', etc for prerelease builds
8
8
  STRING = [MAJOR, MINOR, TINY, BUILD].compact.join('.')
9
9
  end
10
10
 
data/newrelic_rpm.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{newrelic_rpm}
8
- s.version = "3.1.0.beta5"
8
+ s.version = "3.1.0.djlogging"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Bill Kayser", "Justin George", "Jon Guymon"]
12
- s.date = %q{2011-06-10}
11
+ s.authors = ["Bill Kayser", "Justin George"]
12
+ s.date = %q{2011-05-26}
13
13
  s.description = %q{New Relic is a performance management system, developed by New Relic,
14
14
  Inc (http://www.newrelic.com). New Relic provides you with deep
15
15
  information about the performance of your web application as it runs
@@ -186,7 +186,6 @@ http://github.com/newrelic/rpm/
186
186
  "test/new_relic/metric_data_test.rb",
187
187
  "test/new_relic/metric_spec_test.rb",
188
188
  "test/new_relic/rack/all_test.rb",
189
- "test/new_relic/rack/developer_mode_test.rb",
190
189
  "test/new_relic/stats_test.rb",
191
190
  "test/new_relic/transaction_analysis/segment_summary_test.rb",
192
191
  "test/new_relic/transaction_analysis_test.rb",
@@ -19,16 +19,13 @@ class NewRelic::ControlTest < Test::Unit::TestCase
19
19
  end
20
20
 
21
21
  def test_cert_file
22
- require 'socket'
23
- require 'openssl'
24
-
25
- s = TCPSocket.new 'collector.newrelic.com', 443
26
- ctx = OpenSSL::SSL::SSLContext.new
27
- ctx.ca_file = @c.cert_file_path
28
- ctx.verify_mode = OpenSSL::SSL::VERIFY_PEER
29
- s = OpenSSL::SSL::SSLSocket.new s, ctx
30
- s.connect
31
- # should not raise an error
22
+ result = `openssl verify -CAfile #{@c.cert_file_path} #{@c.send(:newrelic_root)}/cert/site.pem`
23
+ assert (result =~ /OK/), 'Should verify certificate: ' + result
24
+ end
25
+
26
+ def test_old_cert_file
27
+ result = `openssl verify -CAfile #{@c.cert_file_path} #{@c.send(:newrelic_root)}/cert/oldsite.pem`
28
+ assert (result =~ /OK/), 'Should verify the old certificate: ' + result
32
29
  end
33
30
 
34
31
  def test_monitor_mode
data/test/test_helper.rb CHANGED
@@ -123,22 +123,4 @@ module TransactionSampleTestHelper
123
123
 
124
124
  sampler.samples[0]
125
125
  end
126
-
127
- def run_sample_trace_on(sampler, path='/path')
128
- sampler.notice_first_scope_push Time.now.to_f
129
- sampler.notice_transaction path, path, {}
130
- sampler.notice_push_scope "Controller/sandwiches/index"
131
- sampler.notice_sql("SELECT * FROM sandwiches WHERE bread = 'wheat'", nil, 0)
132
- sampler.notice_push_scope "ab"
133
- sampler.notice_sql("SELECT * FROM sandwiches WHERE bread = 'white'", nil, 0)
134
- yield sampler if block_given?
135
- sampler.notice_pop_scope "ab"
136
- sampler.notice_push_scope "lew"
137
- sampler.notice_sql("SELECT * FROM sandwiches WHERE bread = 'french'", nil, 0)
138
- sampler.notice_pop_scope "lew"
139
- sampler.notice_pop_scope "Controller/sandwiches/index"
140
- sampler.notice_scope_empty
141
- sampler.samples[0]
142
- end
143
-
144
126
  end
@@ -6,19 +6,15 @@
6
6
  so that the rows logger is loaded first.
7
7
  <% else %>
8
8
  <%= render :partial => 'segment_limit_message' if trace_row_display_limit_reached %>
9
- <table width="100%" class="segment_list_table">
9
+ <table width="100%">
10
10
  <thead>
11
11
  <tr>
12
- <td>
13
- <%= link_to_if params['d'], "Timestamp", "show_sample_sql?id=#{sample.sample_id}" %>
14
- </td>
15
- <td colspan="2">
16
- <%= link_to_if !params['d'], "Duration", "show_sample_sql?id=#{sample.sample_id}&d=y" %>
17
- </td>
12
+ <td>Timestamp</td>
13
+ <td colspan="2">Duration</td>
18
14
  <td>SQL</td>
19
15
  </tr>
20
16
  </thead>
21
17
 
22
- <%= render :partial => 'sql_row', :collection => @sql_segments[0...trace_row_display_limit] %>
18
+ <%= render :partial => 'sql_row', :collection => @sample.sql_segments[0...trace_row_display_limit] %>
23
19
  </table>
24
20
  <% end %>
@@ -310,12 +310,6 @@ div.flash.notice
310
310
  text-decoration: underline;
311
311
  }
312
312
 
313
- .segment_list_table thead a
314
- {
315
- color: white;
316
- text-decoration: underline;
317
- }
318
-
319
313
  .application_stack_trace, .full_stack_trace
320
314
  {
321
315
  font-family: monospace;
@@ -70,10 +70,9 @@
70
70
  <%= show_view_link 'SQL', 'show_sample_sql' %>
71
71
  </div>
72
72
  <br/>
73
-
74
73
  <%= %w[show_sample_summary show_sample_sql show_sample_detail].collect do |p|
75
74
  options = {:align => 'center', :id => p}
76
- options[:style] = 'display: none' unless @req.path.include?(p)
75
+ options[:style] = 'display: none' unless p == params['action']
77
76
  content_tag('div', render(:partial => p), options)
78
77
  end.join(' ') %>
79
78
  <% end %>
metadata CHANGED
@@ -1,24 +1,23 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: newrelic_rpm
3
3
  version: !ruby/object:Gem::Version
4
- hash: -1848230031
4
+ hash: 886112865
5
5
  prerelease: true
6
6
  segments:
7
7
  - 3
8
8
  - 1
9
9
  - 0
10
- - beta5
11
- version: 3.1.0.beta5
10
+ - djlogging
11
+ version: 3.1.0.djlogging
12
12
  platform: ruby
13
13
  authors:
14
14
  - Bill Kayser
15
15
  - Justin George
16
- - Jon Guymon
17
16
  autorequire:
18
17
  bindir: bin
19
18
  cert_chain: []
20
19
 
21
- date: 2011-06-10 00:00:00 -07:00
20
+ date: 2011-05-26 00:00:00 -07:00
22
21
  default_executable:
23
22
  dependencies:
24
23
  - !ruby/object:Gem::Dependency
@@ -244,7 +243,6 @@ files:
244
243
  - test/new_relic/metric_data_test.rb
245
244
  - test/new_relic/metric_spec_test.rb
246
245
  - test/new_relic/rack/all_test.rb
247
- - test/new_relic/rack/developer_mode_test.rb
248
246
  - test/new_relic/stats_test.rb
249
247
  - test/new_relic/transaction_analysis/segment_summary_test.rb
250
248
  - test/new_relic/transaction_analysis_test.rb
@@ -1,43 +0,0 @@
1
- # ENV['SKIP_RAILS'] = 'true'
2
- require File.expand_path(File.join(File.dirname(__FILE__),'..', '..',
3
- 'test_helper'))
4
- require 'rack/test'
5
- require 'new_relic/rack/developer_mode'
6
-
7
- ENV['RACK_ENV'] = 'test'
8
-
9
- class DeveloperModeTest < Test::Unit::TestCase
10
- include Rack::Test::Methods
11
- include TransactionSampleTestHelper
12
-
13
- def app
14
- mock_app = lambda { |env| [500, {}, "Don't touch me!"] }
15
- NewRelic::Rack::DeveloperMode.new(mock_app)
16
- end
17
-
18
- def setup
19
- @sampler = NewRelic::Agent::TransactionSampler.new
20
- run_sample_trace_on(@sampler, '/here')
21
- run_sample_trace_on(@sampler, '/there')
22
- run_sample_trace_on(@sampler, '/somewhere')
23
- NewRelic::Agent.instance.stubs(:transaction_sampler).returns(@sampler)
24
- end
25
-
26
- def test_index_displays_all_samples
27
- get '/newrelic'
28
-
29
- assert last_response.ok?
30
- assert last_response.body.include?('/here')
31
- assert last_response.body.include?('/there')
32
- assert last_response.body.include?('/somewhere')
33
- end
34
-
35
- def test_show_sample_summary_displays_sample_details
36
- get "/newrelic/show_sample_summary?id=#{@sampler.samples[0].sample_id}"
37
-
38
- assert last_response.ok?
39
- assert last_response.body.include?('/here')
40
- assert last_response.body.include?('SandwichesController')
41
- assert last_response.body.include?('index')
42
- end
43
- end