Question
· May 9, 2018
Standardizing Error Logging

I have been tasked with creating a class that will handle error logging in a consistent manor for an application I am working on. The need is to have all variables in the calling method logged along with some other information.

The example given was zwrite which is exactly what I need, however, I somehow need to capture the output of ZW and put it into a database table. Any easy way to capture this data? I was able to dump ZW to a file, but that is not ideal.

Any help is appreciated!

0 8
0 1.1K
Question
· Jun 21, 2018
COMANDO $ZF

Hello everyone

I have a problem with $ ZF (-1)

I need to delete file from windows folder example c: \ sys \ text.txt, when executing the w $ zf (-1, "c: \ sys \ text.txt") command, the file does not delete.
There is some other cache command that performs this task.

hugs

Davidson

0 8
0 1.1K

Is there an API that would list classes within a given package? I can't find any. I do have a workaround that uses class index, but this query lists all classes available in the namespace and I have to filter those I want. But this is just unnecessary overhead.

If anyone has spotted such API, please let me know.

TIA!

Dan

0 3
1 1.1K

Hi,

Getting below error on newly installed cache version 2017.2. This is running fine on another instance.

Q00QUASAR:TEST1>D $system.OBJ.CompileAll()

Detected 1229 errors during compilation in 145.4s.

Instance name:TEST2>D $system.OBJ.CompileAll()

Detected 202 errors during compilation in 211.7s.

Instance name:TEST3>D $system.OBJ.CompileAll()

Detected 784 errors during compilation in 186.6s.

TEST2>do $System.OBJ.CompilePackage("Calendar")

Compilation started on 02/25/18 17:21:33 with qualifiers ''

0 1
0 1.1K

Let's say I have this simple script file try.script

write 1
write 0

I can execute it in a terminal (csession) by calling:

csession cache < try.script

And I get the following output:

%SYS>
1
%SYS>
0

However I want to use a try catch block in my script:

try {
write 1/0
catch {}
halt

But as script is executed line by line, it's interpreted like this:

0 8
0 1.1K

I was able to run the Cache terminal from the command prompt with the following command, in the namespace that I provided in the brackets:

cterm /console=cn_ap:ENSEMBLE[TEST_1]

But the command suddenly stopped opening the terminal in the correct namespace. It just opens it in the default namespace. I tried it with different namespaces or invalid namespaces, it always opens the terminal in the default namespace now.

I cannot figure out what is causing this behaviour.

0 5
0 1.1K

Hi all,

I am new in Cache. I have to update a record with a long text field, for that, I am using ODBC but the issue is that it is returning an error when I execute the ODBC SQL statement because the field contains some commas, colon, double quotes, single quotes, and CR LF characters.

There is a way to escape this chars? I have seen I can save the field when I replace the single quotes with a double single quote (it's -> it''s) but I can not save the information when the field contains double quote chars. What about the other chars?

0 6
0 1.1K

Hi community.

I'm trying to create a "setup" method to be called on a batch script but i'm getting the error <INVALID ARGUMENT> when I pass a string as an argument to this method.

The idea is to call the method with a folder as the parameter, for example:

##class(test.MyClass).MyMethod("D:\path\to\my\file.json")

My class (just for example)

Class test.MyClass

0 7
0 1.1K

I am trying to use Entity Framework with Visual Studio 2017. After following the Intersystems documentation ("Using the Caché Entity Framework Provider") I still cannot see the data source in Server Explorer. Any ideas why?

1 9
1 1K

Let's say I want to execute this cache script (saved as test.txt) from OS terminal:

zn "USER"
write 1
zn "%SYS"
write 2
halt

Executing the following command in a terminal:

csession cache < test.txt

Would yield this output:

$ csession cache < script.txt

Node: gitlab-test, Instance: CACHE

USER>

USER>
1
USER>

%SYS>
2
%SYS>
Job succeeded

Is there a better way to run these scripts?

Currently I have two problems:

1 1
0 1K

Hi, all!
As I know, InterSystems recommends the use of Huge Pages. And if count of Huge Pages is enough, we'll see (in cconsole.log) something like this during Cache startup:

12/29/17-14:40:50:360 (3625) 0 Allocated 4630MB shared memory using Huge Pages: 4096MB global buffers, 256MB routine buffers

But if count of Huge Pages is not enough for location of all Globals and Routines caches, Cache won't use Huge Pages.

1 2
0 1K

Hello All,

I hope it's not a silly question.

Here is my issue:
I have 3 simple classes:

Parent class, let's say:

Class ParentClass Extends %RegisteredObject
{
Property a As %String;
}

and two children classes
Class A.Child Extends ParentClass
{
Property b As %String;
}

Class B.Child Extends ParentClass
{
Property c As %String;
}

So no issues - all compiles and seem to work.

But, when I add %XML.Adaptor to my parent class, so:

0 3
0 1K

Can anyone tell me how to discover in ObjectScript the operating system and operating system version that Caché is actually running in? (Not the operating system the build was compiled for.)

0 11
1 1K

Hello, I'm trying to install CSP Gateway on Ubuntu 18.04 (Apache) with the installer CSPGateway-2018.1.1.638.0-lnxubuntux64.tar.gz but it doesn't seem to work. I keep getting access-denied when I try to open CSP-pages or the CSP Management portal.

Does someone have an installation-manual or so ?

0 5
0 989

How to convert SQL persistent classes to JSON output - I have tried 1 option but appears to be very lengthy process.

I have many other SQL storage's defined and have to expose them as well to JSON. Can anyone please suggest a better approach.

My column names usually match with my Json properties.

My User.TestClass is the class with GetJsonList() as my method to return /output JSON formatted data.

The Code tried and SQL storage structure are as follows -

1 3
0 974
Question
· Feb 26, 2018
Monitoring with Zabbix

Hi community,

I need to monitor Caché Intersystems with some custom indicators.


I started customizing the SNMP Mib. But I've been in a Zabbix event, all speakers use ODBC to monitor their database, Oracle, MySQL, PostgreSQL ...

What is the best way? Use ODBC or SNMP Custom Mib?
What are you guys using?

0 2
0 962

Hi Guys,

Can you please advise on the below queries.

Query 1:

Example 1:

 S a="345",b="arun",c="kumar",d="hi",e="yello",f="orange"

Example 2:

S a="345"

S b="arun"

S c="kumar"

S d="hi"

S e="yello"

S f="orange"

Can you please advise me, which one is performance wise is better.

Query 2:

Example 1:

S:a=1 R="Arun"

Example 2:

I a=2 R="Arun"

Please advise me, which one is giving better performance in this.

0 11
0 961

I need to dynamically create a class based on a parameter passed into a class method. Basically the method takes in a string that contains the name of the class I need to create a new instance of.

I need something along these lines.

ClassMethod someMethod(className As %String)
{
	set classObject = ##class(className).%New()

...
}

Trying to do this right results in a class not found error because it seems to be treating the variable as a literal string.

0 3
0 959