The visual filter criteria editor is only capable of representing a subset of the criteria possible—more advanced filters can be created by defining the criteria directly with code. You can switch between the visual editor and the code editor using the toggle on the bottom right of the filter sheet.
Filters are implemented in Conductor using a Cocoa feature called predicates. For a complete description of their syntax, see Predicate Format String Syntax and BNF Definition of Cocoa Predicates in Apple’s Predicate Programming Guide. You can view the code for the default filters for a general idea of how they work.
Listed below are all the entities represented in a Conductor log file and their respective properties with a detailed description of each. You can use any and all of these properties to define filter criteria. The root object for request filters is a request and for activity filters is an activity.
If you need help creating a specific filter or have any questions, don’t hesitate to contact me and I’ll lend a hand!
Requests | ||
Name | Type | Description |
---|---|---|
description | String | The controller and action the request was routed to, or the path of the URL if it wasn’t routed to a controller. The controller and action are displayed as they are when defining Rails routes—for example, the |
controller | String | The full name of the controller the request was routed to. For example, |
action | String | The name of the action the request was routed to. This field is empty for requests not routed to a controller. |
url | String | The path and query components of the URL. |
urlPath | String | The path component of the URL. |
urlParameters | String | The query component of the URL. |
method | String | The HTTP method of the request. For example, |
ip | String | The IP address the request originated from. |
static | Boolean | Whether the request is for a static asset (such as a stylesheet, script, or image) or a dynamic request served by the Rails application. |
format | String | The Rails response format. For example, |
response | String | The HTTP response code and a textual description of the code, concatenated with an em dash. For example, |
responseCode | Integer | The HTTP response code. This field may be empty for requests where logging is interrupted—for example, certain routing errors. |
responseMessage | String | A textual description of the HTTP response code. This field may be empty for requests where logging is interrupted—for example, certain routing errors. |
duration | Decimal | The total amount of time spent handling the request in seconds. This field may be empty for requests where logging is interrupted—for example, certain routing errors. |
viewDuration | Decimal | The time spent rendering views in seconds. This field may be empty for requests that don’t render views. |
databaseDuration | Decimal | The time spent performing database operations in seconds. This field may be empty for requests that don’t perform database operations. |
date | Date | The date and time of the request. |
parameters | Collection | An un-nested array of the request’s query parameters. See Parameters. |
activities | Collection | The request’s activities. See Activities. |
Parameters | ||
Name | Type | Description |
name | String | The parameter’s name. Since the parameters collection is un-nested, any hash or array parameters will use their complete names including brackets—for example, |
value | String | The parameter’s value. |
Activities | ||
Name | Type | Description |
type | String | The type of activity. Possible values are:
|
description | String | A summary of the activity. Each type of activity includes different information in the summary: MessageThe message. QueryThe SQL of the query ( RenderThe template name ( ErrorThe exception ( Stack TraceThe source file ( The mailer ( RedirectThe redirect URL ( CacheThe cache operation ( FileThe path of the file ( DataThe filename sent to the browser ( Filter Chain HaltThe name of the halting filter ( |
framework | Boolean | Whether the activity originates in the Rails framework itself. This is relevant for filtering certain activities such as queries, renders, and stack traces where Rails itself may generating activities rather than your application directly. |
logLevel | Integer | A numeric representation of log level of the activity. This value is an integer so that inequalities can be used to filter activities—for example, you may want to see all activities with a log level greater than warnings. Possible values and the log levels they correspond to are:
|
duration | Decimal | The duration of the activity in seconds. This field may be empty for activities that don’t have a duration. |
queryModel | String | The name of the ActiveRecord model associated with the query. This field is empty for queries not associated with a model. |
queryOperation | String | The query operation performed. Possible values are:
|
querySQL | String | The complete SQL statement of the query. |
queryCached | Boolean | Whether the query was in the Rails query cache. |
queryExplains | Collection | The query’s explains. See Explains. |
renderTemplate | String | The path and name of the template rendered, as passed to a call to |
renderTemplateFilename | String | The full path and filename within the views directory of the template rendered. |
renderLayout | String | The path and name of the layout used to render the template. For example, |
renderLayoutFilename | String | The full path and filename within the views directory of the layout used to render the template. This field may be empty if no layout was used. |
renderPartial | Boolean | Whether the template rendered was a partial. |
renderCount | Integer | The number of times the template was rendered if rendered as a collection. |
errorException | String | The type of exception. |
errorMessage | String | The message associated with the error. |
stackTraceFile | String | The path of the file containing the source code for the stack frame. |
stackTraceLine | Integer | The line number the stack frame is on. |
stackTraceMethod | String | The name of the method the stack frame is in. |
stackTraceGem | String | The name of the gem the stack frame is in. This field may be empty if the stack frame is not within a gem. |
stackTraceGemVersion | String | The version of the gem the stack frame is in. This field may be empty if the stack frame is not within a gem. |
mailMailer | String | The full name of the mailer that generated the email. For example, |
mailSubject | String | The subject of the email. |
mailFrom | String | The full |
mailFromAddress | String | The email address from the |
mailFromName | String | The display name from the |
mailTo | String | The full |
mailToAddresses | String | A comma separated list of the email addresses from the |
mailToNames | String | A comma separated list of the display names from the |
mailCC | String | The full |
mailCCAddresses | String | A comma separated list of the email addresses from the |
mailCCNames | String | A comma separated list of the display names from the |
mailBCC | String | The full |
mailBCCAddresses | String | A comma separated list of the email addresses from the |
mailBCCNames | String | A comma separated list of the display names from the |
mailTextBody | String | The plain text body of the email or the |
mailHTMLBody | String | The HTML body of the email or the |
mailRawBody | String | The raw body of the email, including the headers and all parts of multipart emails. |
mailHeaders | Collection | The email’s headers. See Mail Headers. |
redirectURL | String | The URL redirected to. |
cacheOperation | String | The type of cache operation performed. Possible values are:
|
cacheKey | String | The cache key operated on. |
filePath | String | The path of the file being sent. |
fileFilename | String | The filename the file is being sent to the browser with. |
fileType | String | The HTTP content type of the file. |
fileDisposition | String | The way the file is being sent to the browser, either for display inline or as a download. |
dataFilename | String | The filename the data is being sent to the browser with. |
dataType | String | The HTTP content type of the data. |
dataDisposition | String | The way the data is being sent to the browser, either for display inline or as a download. |
filterChainHaltFilter | String | The name of the filter that halted the filter chain. |
Explains | ||
Name | Type | Description |
summary | String | The textual information associated with the explain. This field is only relevant to Postgres and SQLite. |
table | String | The |
key | String | The |
rows | Integer | The |
rowsFiltered | Decimal | The |
information | String | The |
comparison | String | The |
keyLength | Integer | The |
possibleKeys | String | The |
joinType | String | The |
selectType | String | The |
queryID | Integer | The |
fromPosition | Integer | The |
children | Collection | Child explains nested below this one. This field is only relevant to database adaptors that output nested explains (currently Postgres and SQLite). |
Mail Headers | ||
Name | Type | Description |
name | String | The header’s name. |
value | String | The header’s value. |